フォルダ内の同じ数字を持つcsvファイルの結合

21 views (last 30 days)
Koji
Koji on 26 Jul 2022
Commented: Koji on 27 Jul 2022
フォルダ内に同じ数字nが入ったA_n.csvとB_.csvがあります。
AとBの行列は一致しています。
これをAのデータの横にBのデータを追加したA+B_n.csvにまとめたいと考えています。
AとBをまとめるにはcat(2,A,B)で良いかと思うのですが、
フォルダ内に同じ数字nが入ったAとBをfor構文を使って一気にまとめる方法がわかりません。
どのようにしたら同じ数字nが入ったファイルAとBを抽出してまとめることができますでしょうか?

Accepted Answer

Atsushi Ueno
Atsushi Ueno on 26 Jul 2022
selpath = uigetdir; % 同じ数字を持つcsvファイルの入ったフォルダを選択する
cd(selpath)
filelist = dir(fullfile(selpath,'A_*.csv'));
for n = 1:length(filelist)
A = readmatrix(filelist(n).name);
B = readmatrix(strrep(filelist(n).name,'A','B'));
A_B = cat(2,A,B); % くっ付ける
writematrix(A_B,strrep(filelist(n).name,'A','A+B'));
end
  1 Comment
Koji
Koji on 27 Jul 2022
Aの数字以外の部分をBに置き換えてBのn番目のファイルにして読み込むということですね。
考えつきませんでした。
解決しました。ありがとうございました。

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!