Importing 2 columns using textscan (OR possibly a different/easier way?)
1 次查看(过去 30 天)
显示 更早的评论
Hey MLC,
I'm trying to use texscan to get matrix output from files which have fourteen lines of junk header crap, and then 3 columns: the frequency, the data, and then another column (it's junk, though)
The files are named e.g. TEST2A.txt, TEST2B.txt, TEST3A.txt,...,TEST9A.txt, TEST9B.txt i.e. 'TEST' then '2'-'9' (labeled itest in my code) and then 'A'/'B' (this is called fileid) :)
How can I improve my code to peel off each column as (first:) freq{itest,fileid} and (second:) noise{itest,fileid}.. Please forgive my noobish ways, please correct me. Also, I tried ot use uiimport and I didn't know how it worked... feelin' dumb.
My code compiles and noise data is empty.
for itest=2:9; % Test Numbers
% two file-types "A" and "B"
filename{1}=sprintf('test%.0fA.txt',itest);
filename{2}=sprintf('test%.0fB.txt',itest);
% "A".. then "B"
for fileid=1:2
% File has 14 lines of header, then 3 col: freq, norm, phase
cll = textscan(filename{fileid},'numberofheaderlines',14);
noisedata{itest,fileid}=cell2mat(cll); clear cll
% freq = noisedata{itest,fileid}(:,1);
% noise = noisedata{itest,fileid}(:,2);
end;
end;
I appreciate your time.
Thank you, Michael
0 个评论
采纳的回答
Walter Roberson
2013-11-17
cll = textscan(filename{fileid}, '%f%f%*f', 'numberofheaderlines', 14, 'CollectOutput', 1);
更多回答(0 个)
另请参阅
类别
在 Help Center 和 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!