how to read text file and to ignore the first 10 rows and to take only the 4rth and 5th columns?

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?

 Accepted Answer

Try
cac = textscan( fid, '%*f%*f%*f%f%f%*f%*f', 'Headerlines', 10 );
Doc says: &nbsp %* &nbsp Skip the field. textscan does not create an output cell for any field that it skips.
That's not too complicated!
&nbsp
"any other solution or how to do this?" &nbsp None less complicated than textscan - AFAIK

1 Comment

dlmread() would be easier if it only had a headerlines option. With textscan() you also have to call fopen() and fclose().

Sign in to comment.

More Answers (1)

Maybe try importdata()
delimiterIn = ' ';
headerlinesIn = 10;
myStructure = importdata(filename,delimiterIn,headerlinesIn);
data = myStructure.data;
Worked for me.

2 Comments

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.
Problem is I don't know about importdata ;-).

Sign in to comment.

Categories

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

Asked:

on 15 Sep 2014

Edited:

on 16 Sep 2014

Community Treasure Hunt

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

Start Hunting!