Data extraction from a text file.
显示 更早的评论
I have the following data:
74
: 69
: 65
: 50
: 39
: 28
: 19
: 8
I created the following code to read the data:
fid=fopen('kirby1.txt');
data=textscan(fid,'%f','delimiter',':');
but it turns the ":" into "NAN". Is there a way to read the data without the ":"?
Desire output:
74
69
65
50
39
28
19
8
Thanks for your help.
1 个评论
per isakson
2012-7-20
编辑:per isakson
2012-7-20
Does the first line differ from the others?
I guess the NaNs are the non-excisting values before ":".
回答(3 个)
per isakson
2012-7-20
编辑:per isakson
2012-7-20
If all lines have the same format try
data=textscan(fid,':%f');
--- Cont. ---
This work with R2012a
fid = fopen( 'cssm.txt' );
cac = textscan( fid, ':%f' )
where cssm.txt contains
: 74
: 69
: 65
...
--- Cont. ---
Or if the first line differs
function cssm()
fid = fopen( 'cssm.txt' );
ca1 = textscan( fid, '%f', 1 )
ca2 = textscan( fid, ':%f' )
end
where cssm.txt contains
74
: 69
: 65
...
Kirby Little
2012-7-20
0 个投票
2 个评论
per isakson
2012-7-20
编辑:per isakson
2012-7-20
It is difficult for me to guess the reason to the error you see!
You didn't answer my question in my comment on your question.
Walter Roberson
2012-7-20
Kirby, please show your line of code for the textscan()
Andrei Bobrov
2012-7-20
f = fopen('yourtextfile.txt');
c = textscan(f,'%s');
fclose(f);
out = str2double(c{:}(1:2:end));
类别
在 帮助中心 和 File Exchange 中查找有关 Large Files and Big Data 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!