ループ処理の中で、繰り返し番号つきのファイル名でデータをロードするにはどうしたらよいでしょうか?
4 views (last 30 days)
Show older comments
ichiro obayashi
on 20 May 2017
Commented: ichiro obayashi
on 20 May 2017
t_0001~t_0500というデータがあり、これを連続でロードしたいと考えています。 データ内に文字と数字が混在していても連続処理は可能でしょうか?
0 Comments
Accepted Answer
mizuki
on 20 May 2017
ファイル名に文字と数字が混在している場合、数字を文字列として認識させる必要があります。数字を文字列に変換するには INT2STR 関数あるいは例えば '0' のように数字を直接シングルクォート ' で囲みます。
次のようなコードでいかがでしょうか。
for i=1:500
if (i < 10) % 10未満なら 00 を初めにつける
num = ['00', int2str(i)];
elseif(i < 100) % 10-99 なら 0 を初めにつける
num = ['0', int2str(i)];
else
num = int2str(i);
end
filename = ['t_0', num];
load(filename)
end
余談ですが、並列計算のツールボックス Parallel Computing Toolbox をお持ちの場合、FOR を PARFOR に変更することで、並列読み込みができます。読み込み時間が膨大にかかっている場合には時間短縮ができます。
More Answers (0)
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!