How do i read a line after a word in a csv file

3 views (last 30 days)
Dear Matlab Community,
i have the following question,i have a .csv (attached) file which contains multiple data, before every data group there is a string, that defines what it is, for example "wavelength". The question is how do i search for a word in the .csv and then read the numbers after the word? Because of the format readtable does not exactly work :)
Thank you all in advance

Accepted Answer

Benjamin Thompson
Benjamin Thompson on 15 Aug 2022
This could be a good example of using splitapply after reading in the entire dataset as a table. See this article:
https://www.mathworks.com/help/matlab/matlab_prog/split-table-data-variables-and-apply-functions.html?s_tid=srchtitle_Split%20Table%20Data%20Variables%20and%20Apply%20Functions_1
  2 Comments
Alex Perrakis
Alex Perrakis on 16 Aug 2022
Readtable function does not work at all because of the format for some reason.
Benjamin Thompson
Benjamin Thompson on 16 Aug 2022
Your file is an odd format. How about this approach using textscan to parse it into a cell array and then strcmp to locate the word that you want in the array. I am not sure what you want to do with it from there.
fid = fopen('cycle3.csv', 'rt');
C = textscan(fid, '%s', 'Delimiter','\t');
I = strcmp(C{1}, 'MPECS Position (X Y Z)');
I2 = find(I);

Sign in to comment.

More Answers (0)

Categories

Find more on Data Import and Export in Help Center and File Exchange

Products


Release

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!