Finding correct data row in excel data file

2 次查看(过去 30 天)
Hi,
I have excel data files which I read and process in matlab, sometimes the logged data shifts and starts at row 10 instead of row 8, is there a way for matlab to automatically find where the data starts without having to manually set the row?
Below is a screenshot of what I mean:
Thanks

采纳的回答

Sriram
Sriram 2012-8-9
编辑:Sriram 2012-8-9
If you are sure that all your input file starts with the same string "Parameter PC Timest..... " or "SourceAddress" as like what you have shown in the image.... If that's the case, you can use any of the following which might suit yours
strcmp % Compare strings with case sensitive
strcmpi % Compare strings
strncmp % for first n characters
strncmpi
To get the text fields from xlsread use
[num,txt,raw] =xlsread('filename') % check matlab help for more info
Compare the text filed and later try to access the data by appending the rows from the compared string "true" row..! Hope you can understand..:)
This might the simple and best way that can help you and I am sure Matlab by itself automatically can't know what's your files data starting point :P
  3 个评论
Sriram
Sriram 2012-8-10
[numbers,texts,full] = xlsread('filename');
cmp = strcmpi ('Parameter',texts);
row_nums = find(cmp==1);
Now cell's row with word parameter is available in row_nums !

请先登录,再进行评论。

更多回答(1 个)

Azzi Abdelmalek
Azzi Abdelmalek 2012-8-10
that depends on what kind of data you have, string, numbers,...
[num,text,num_text]=xlsread(YourFile)
  1. num contains numeric data (class double)
  2. text contains string data (class cell)
  3. num_textt contains both numeric and string (class cell)
you don't need to know where are your data, unless there other contents then your matrix of data.

类别

Help CenterFile Exchange 中查找有关 Data Import from MATLAB 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by