issue regarding reading .txt file with comments
9 ビュー (過去 30 日間)
古いコメントを表示
Hello, I am trying to load a 'txt' file and plot it. It has just 2 columns and multiple rows. I also have few rows which have comments which i can not remove. But when i load the file and plot it. it just plot the data till the row which has the 1st comment. After that it is not acknowledging or reflecting the data. What can be done for this? Please help me out. I am using 2018 version Thanks in advance.
3 件のコメント
採用された回答
Adam Danz
2018 年 8 月 1 日
編集済み: Adam Danz
2018 年 8 月 1 日
If you are using textscan() to read in the data, you can use the 'CommentStyle' property which will ignore any text on a single line following the comment character ('#').
A simple example
fid = fopen('test1.txt');
C = textscan(fid, %f, 1, 'CommentStyle', '#');
fclose(fid);
1 件のコメント
Walter Roberson
2018 年 8 月 1 日
You would probably want
C = cell2mat( textscan(fid, '%f%f', 'CommentStyle', '#', 'CollectOutput', true) );
その他の回答 (1 件)
Stephen23
2018 年 8 月 2 日
編集済み: Stephen23
2018 年 8 月 3 日
More robust:
opt = {'CommentStyle','#', 'CollectOutput',true};
[fid,msg] = fopen('yourfile.txt','rt');
assert(fid>=3,msg)
C = textscan(fid, '%f%f', opt{:});
fclose(fid);
M = C{1};
Or use dlmread.
6 件のコメント
Stephen23
2018 年 8 月 3 日
編集済み: Stephen23
2018 年 8 月 3 日
Akshat Shrivastava: please upload your data file. I cannot load a screenshot as data.
Possibly you just need to add 'MultipleDelimsAsOne' to the options cell array, but without your actual data file this is impossible for me to test.
Or you might be able to trivially use dlmread. This would be easy to check if I had your data file.
Walter Roberson
2018 年 8 月 3 日
In particular we need to verify whether the file is tab delimited or simple space delimited or is fixed width fields.
参考
カテゴリ
Help Center および File Exchange で Text Files についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!