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

3 次查看(过去 30 天)
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

采纳的回答

Benjamin Thompson
Benjamin Thompson 2022-8-15
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 个评论
Alex Perrakis
Alex Perrakis 2022-8-16
Readtable function does not work at all because of the format for some reason.
Benjamin Thompson
Benjamin Thompson 2022-8-16
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);

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Data Import and Export 的更多信息

产品


版本

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by