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

7 views (last 30 days)
雅晶
雅晶 on 27 Oct 2022
Commented: 雅晶 on 1 Nov 2022
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)

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!