MATLAB で現在のフォルダにある全てのテキストファイルを読み込むにはどうすればよいですか?
146 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
MathWorks Support Team
el 9 de Jun. de 2017
Respondida: MathWorks Support Team
el 9 de Jun. de 2017
MATLAB で、現在のフォルダ内にあるテキストファイル( .txt)を全て読み込み、1つの 変数として定義する方法を教えてください。
Respuesta aceptada
MathWorks Support Team
el 14 de Jun. de 2017
dir 関数で、ファイル名のリストを取得し、それを元にループ処理で読み込みを行うことができます。
以下のコマンド例は、カレントディレクトリ内にある全ての .txt ファイルを多次元配列として読み込む例です。
% テストファイルの作成
csvwrite('A.txt',rand(3))
csvwrite('B.txt',rand(3))
csvwrite('C.txt',rand(3))
% テキストファイルの読み込み
list = dir('*.txt'); % 現在のフォルダーにある .txt をリスト
% データの読み込み
for n = 1:length(list)
data(:,:,n) = csvread(list(n).name);
end
上記の例は、ファイル内のデータサイズが一致いるため、多次元の double 型の配列として変数 data を作成しましたが、データのサイズが一致してなければ、セル配列や構造体データとして保存することが可能です。
以下は、セル配列として読み込む例です。
numArrays = length(list); % ファイルの数
DATA = cell(numArrays,1); % 配列事前確保
for n = 1:numArrays
DATA{n} = csvread([file_name{n},'.txt']);
end
データの読み込みに関しては、ファイルに応じて適切な関数を使用します。詳細については、以下の URL よりドキュメントをご覧ください。
・MATLAB: データのインポートとエクスポート
https://jp.mathworks.com/help/matlab/data-import-and-export.html
0 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre テキスト ファイル en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!