同じフォルダ内にある複数のcsvファイルをインポートしたい
Show older comments
同じフォルダ内に複数あるcsvファイルのa~b行c列にある数値をインポートし、一つの数値行列にまとめたいです。一つずつインポートすればいいのですがファイルの数が多いため、ご教示いただけますと幸いです。
Accepted Answer
More Answers (1)
for i = 1:100
fileID = fopen(['test' num2str(i) '.csv'], 'w');
nbytes = fprintf(fileID,'%5d,%5d,%5d,%5d,%5d\n',magic(5));
fclose(fileID); % 動作確認用にCSVファイル'test(数字).csv'を100個作成
end
% 取り出したいのはa~b行c列にある数値。a=1,b=2,c=3とすれば4と6を取り出す事になる。
a = 1; b = 2; c = 3;
location = uigetdir(pwd); % CSVファイルが含まれるフォルダを選択する
cd(location)
filelist = dir('**/*.csv'); % CSVファイルのリストを得る
for k = 1:length(filelist)
array = readmatrix([filelist(k).folder filesep filelist(k).name]); % CSVファイルを1つずつインポートする
T(:,k) = array(a:b, c); % 所定の値を取り出し一つの数値行列にまとめる
end
T
Categories
Find more on 大きなファイルとビッグ データ in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!