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

フォルダ内に同じ数字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を抽出してまとめることができますでしょうか?

 採用された回答

Atsushi Ueno
Atsushi Ueno 2022 年 7 月 26 日

0 投票

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 件のコメント

Koji
Koji 2022 年 7 月 27 日
Aの数字以外の部分をBに置き換えてBのn番目のファイルにして読み込むということですね。
考えつきませんでした。
解決しました。ありがとうございました。

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File Exchange変数 についてさらに検索

質問済み:

2022 年 7 月 26 日

コメント済み:

2022 年 7 月 27 日

Community Treasure Hunt

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

Start Hunting!