Importing just one column from a file.
1 view (last 30 days)
Show older comments
Hi, I have a dat. file and it has this structure:
5 2
2 4
1 1 1 1 1
2 3 4
1 0 0 3 5
1
...
and it goes on, so it´s like a lot of vectors. I need to get the values just from the "x dimension", so I need to get the first column of each vector (till the end of the matrix, each line has at least one number). I have tried lots of methods, but no one seems work.
I would appreciate if you could send me a "command name" or a link for research.
Thanks,
Ricardo.
2 Comments
Jan
on 22 Sep 2011
The format of the file is not clear.
Please post what you have done and explain, which errors or problems occurred. It is much easier to fix a problem that to create a new program.
Accepted Answer
Walter Roberson
on 22 Sep 2011
fid = fopen('YourFile.txt','rt');
indata = textscan(fid,'%f%*[^\n]');
fclose(indata);
x = indata{1};
0 Comments
More Answers (1)
Wayne King
on 22 Sep 2011
Is it just numeric data without any text, or header?
If so, how about dlmread()
You can use dlmread() to read a specified range.
RESULT = dlmread(FILENAME,DELIMITER,RANGE) reads the range specified
by RANGE = [R1 C1 R2 C2] where (R1,C1) is the upper-left corner of
the data to be read and (R2,C2) is the lower-right corner. RANGE
can also be specified using spreadsheet notation as in RANGE = 'A1..B7'.
2 Comments
Wayne King
on 22 Sep 2011
I agree with Jan about the format, looking at your example more closely -- I'm much less convince that you can identify the range.
See Also
Categories
Find more on Logical 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!