how to read text file and to ignore the first 10 rows and to take only the 4rth and 5th columns?
3 views (last 30 days)
Show older comments
how to read text file and to ignore the first 10 rows and to take only the 4rth and 5th columns? from this file: http://iopscience.iop.org/0266-5611/17/6/301/media/dielTM_dec4f.exp
i tried to use textscan but i don't really understand how to and it looks a bit complicated
any other solution or how to do this?
0 Comments
Accepted Answer
per isakson
on 15 Sep 2014
Edited: per isakson
on 15 Sep 2014
Try
cac = textscan( fid, '%*f%*f%*f%f%f%*f%*f', 'Headerlines', 10 );
Doc says:   %*   Skip the field. textscan does not create an output cell for any field that it skips.
That's not too complicated!
 
"any other solution or how to do this?"   None less complicated than textscan - AFAIK
1 Comment
Image Analyst
on 15 Sep 2014
dlmread() would be easier if it only had a headerlines option. With textscan() you also have to call fopen() and fclose().
More Answers (1)
Image Analyst
on 15 Sep 2014
Maybe try importdata()
delimiterIn = ' ';
headerlinesIn = 10;
myStructure = importdata(filename,delimiterIn,headerlinesIn);
data = myStructure.data;
Worked for me.
2 Comments
Image Analyst
on 15 Sep 2014
You could do it all in just 2 lines instead of the 3 required for textscan(). Plus you don't need to figure out all that stuff about '%*f%*f%*f%f%f%*f%*f' since it figures it out for you.
per isakson
on 16 Sep 2014
Edited: per isakson
on 16 Sep 2014
Problem is I don't know about importdata ;-).
See Also
Categories
Find more on Large Files and Big Data in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!