我有一些文本文件(1.txt,2.txt,...,60.txt),并且它们都有5行标题。我使用以下代码,但无法识别标题并导入所有数据。我怎么能说matlab从一个特定的行开始导入?在matlab中加载文本数据
num_txt=60;
input_dir='C:\data';
filenames=dir(fullfile(input_dir,'*.txt'));
i=1;
for n=1:num_txt
filename=fullfile(input_dir, filenames(n).name);
img=importdata(filename);
data(:,i)=img(:);
i=i+1;
end
tnx,但我怎么可以将所有的数据存储在数据(:,i)= img(:);?因为它为每个导入创建一个单独的文件!我希望他们所有的导入数据都在一个矩阵中。 – Sam 2013-02-25 18:57:01
我的编辑后看到您的评论。 'img(:)'将单个文件中的所有数据延伸到一个列向量中。所以你的'数据'矩阵假设包含所有的文件。 – yuk 2013-02-25 19:01:35
其实你需要使用索引'n',而不是'i'。 'data(:,n)= img(:)'。而且你不需要'i = i + 1;'语句。您也可以将所有数据存储到3D数组中:'data(:,:n)= img;'。相应地预先分配。 – yuk 2013-02-25 19:05:56