1

UNIX コマンドを使用して、.txt ファイルにファイル リストを作成しました。このファイル リストを参照して、ループとして MATLAB で何かを実行する必要があります。最初に、filelist.txt を配列にインポートすることに行き詰まりました。私のfilelist.txtには以下が含まれています:

aa121001/121001ABC/1210010000/aa1.txt
aa121001/121001ABC/1210010000/aa2.txt
aa121001/121001ABC/1210010009/aa1.txt
aa121001/121001ABC/1210010009/aa2.txt
aa121001/121001ABC/1210010016/aa1.txt
aa121001/121001ABC/1210010016/aa2.txt
aa121001/121001ABC/1210010024/aa1.txt
aa121001/121001ABC/1210010030/aa1.txt
aa121001/121001ABC/1210010030/aa2.txt
...

各 aa1.txt または aa2.txt ファイルには、数字のみがあり、char はありません。これらの文字列を配列にインポートできる場合はList、プログラム リストを次のようにコーディングします。

for k = 1:length(List)
myFolder = '/Users/LILI1234/Documents/DataSet';
file = fullfile(myFolder,List(k));
data = dlmread(file);
%do something 
end

これまでのところ、1 つのファイル (filelist.txt の 1 行) に対してのみ機能しますが、さまざまなディレクトリに多数のデータ ファイルがあるため、ループとして実行したいと考えています。私を助けるアイデアがあれば教えてください。どうもありがとう!

4

1 に答える 1

1

を使用してファイルをインポートするList=importdata('filelist.txt')と、リスト全体がList cell 配列になります。List{k}それから、このように各ファイルを呼び出すことができます

myFolder = '/Users/LILI1234/Documents/DataSet'; 
for k = 1:length(List)
    file = fullfile(myFolder,List{k}); 
    data = dlmread(file); 
    %do something
end
于 2014-12-11T09:19:59.477 に答える