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

10 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
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)

Community Treasure Hunt

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

Start Hunting!