for構文で出てきた​変数にナンバリングす​る方法が知りたいです​。

조회 수: 30 (최근 30일)
Taito Kinoshita
Taito Kinoshita 2021년 3월 31일
댓글: Taito Kinoshita 2021년 3월 31일
for構文を使って10×10の行列を作ったとします。
この行列を変数「team」とした場合、team_1~100を作るにはどうしたら良いでしょうか。
具体的には以下のようなコードで、「team」という変数の後にナンバリングしたいです
for k=1:100
for kkk=1:10
n = 100;
team(:,kkk) = randsample(n,10)
end
end

채택된 답변

Shunichi Kusano
Shunichi Kusano 2021년 3월 31일
Hernia Babyさんのおっしゃるとおり、あまりevalは推奨されていません。その理由や連番で変数を作る際の代替法についても次のページで説明がありますのでご覧いただければと思います。
  댓글 수: 1
Taito Kinoshita
Taito Kinoshita 2021년 3월 31일
回答ありがとうございます!こちらのページ見て検討したいと思います!

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

추가 답변 (1개)

Hernia Baby
Hernia Baby 2021년 3월 31일
sprintf と evalの組み合わせで行いました。
しかしナンバリング自体はあまりお勧めしません。
for i = 1:100
n = 10;
eval(sprintf('team_%i = randsample(%i,10);',i,n));
end
  댓글 수: 1
Taito Kinoshita
Taito Kinoshita 2021년 3월 31일
回答ありがとうございます!!

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

카테고리

Help CenterFile Exchange에서 ループと条件付きステートメント에 대해 자세히 알아보기

제품


릴리스

R2020a

Community Treasure Hunt

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

Start Hunting!