for loop 内での連続するcsv​ファイル生成を別々に​保存したい

for i = 1:5
U = (s*lambda)/(4*pi*sin(pi/6));
csvwrite('U.csv',U);
end
上記のスクリプトだと U.csv というファイルに i = 5 での U データが入るだけになってしまいます。
そこで、i = 1 のときは i = 1 での U のデータを U(1).csv として保存、i = 2 のときは i = 2 での U のデータを U(2).csv として保存、というように毎回出てくる U を別々のcsvファイルに保存したいのですが、どうすればいいでしょうか。

 Accepted Answer

Kojiro Saito
Kojiro Saito on 27 Oct 2022
sprintf('U(%d).csv', i)のようにファイル名でiの値を使えば実現できます。
R2022bではcsvwriteが非推奨なので、writematrixを使っています。また、iは虚数を表す関数名であり変数名が競合してしまうので、ここではnを使っています。
for n = 1:5
U = (s*lambda)/(4*pi*sin(pi/6));
writematrix(U, sprintf('U(%d).csv', n));
end

1 Comment

雅晶
雅晶 on 1 Nov 2022
解決しました。ありがとうございます。

Sign in to comment.

More Answers (0)

Categories

Find more on ループと条件付きステートメント in Help Center and File Exchange

Products

Release

R2022b

Asked:

on 27 Oct 2022

Commented:

on 1 Nov 2022

Community Treasure Hunt

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

Start Hunting!