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ファイルに保存したいのですが、どうすればいいでしょうか。

 채택된 답변

Kojiro Saito
Kojiro Saito 2022년 10월 27일

1 개 추천

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

雅晶
雅晶 2022년 11월 1일
解決しました。ありがとうございます。

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 ループと条件付きステートメント에 대해 자세히 알아보기

제품

릴리스

R2022b

질문:

2022년 10월 27일

댓글:

2022년 11월 1일

Community Treasure Hunt

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

Start Hunting!