配列が空になるまで試​行を繰り返すやり方が​分かりません

7 ビュー (過去 30 日間)
Kazumasa Hashiba
Kazumasa Hashiba 2022 年 11 月 29 日
コメント済み: Kazumasa Hashiba 2022 年 11 月 30 日
配列情報を参照して、その配列からデータを取り出し、
配列が空になるまで試行を繰り返す、コードを作りたいのですが
アドバイスが欲しいです。
<イメージ>
まず A という 100000×6 の配列があるとして、
その A から B=A(1,:) の様にして情報を取り出し、A(1,:) を空配列にします。
(この場合は、 A(1,:)=[] で空配列に置き換えました。)
そして、これを A が空になるまで行うようにしたいというものです。

採用された回答

Atsushi Ueno
Atsushi Ueno 2022 年 11 月 29 日
A = zeros(100000,6); % まず A という 100000×6 の配列があるとして、
counter = 0;
while(~isempty(A))
B = A(1,:); % その A から B=A(1,:) の様にして情報を取り出し、A(1,:) を空配列にします。
A(1,:) = []; % (この場合は、 A(1,:)=[] で空配列に置き換えました。)
counter = counter + 1;
end % そして、これを A が空になるまで行うようにしたいというものです。
A % A が空になったか確認
A = 0×6 empty double matrix
counter % きっちり100000回行われたか確認
counter = 100000
  3 件のコメント
Atsushi Ueno
Atsushi Ueno 2022 年 11 月 29 日
> アドバイスが欲しいです
MATLABで配列(ベクトルまたは行列と呼ぶ)を扱う場合、for文で各要素にアクセスする必要は必ずしも必要ありません。むしろそうでない場合の方が多く、多くの場面でfor文を取り除く事が出来ます。
Kazumasa Hashiba
Kazumasa Hashiba 2022 年 11 月 30 日
ご回答ありがとうございます。
こちらを参考にして、コードを作成してみます。
丁寧に解説して頂き、誠にありがとうございました。

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File Exchange行列および配列 についてさらに検索

製品


リリース

R2021a

Community Treasure Hunt

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

Start Hunting!