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

29 Ansichten (letzte 30 Tage)
Taito Kinoshita
Taito Kinoshita am 31 Mär. 2021
Kommentiert: Taito Kinoshita am 31 Mär. 2021
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

Akzeptierte Antwort

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

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

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

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu ループと条件付きステートメント finden Sie in Help Center und File Exchange

Produkte


Version

R2020a

Community Treasure Hunt

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

Start Hunting!