1. ホーム
  2. matlab

Octave/Matlab ベクトルに新しい要素を追加する

2023-11-01 15:07:29

質問

ベクトルを持つ x という要素を追加しなければなりません。 newElem ) .

の違いはあるのでしょうか?

x(end+1) = newElem; 

x = [x newElem];

?

どのように解決するのですか?

x(end+1) = newElem はもう少し堅牢です。

x = [x newElem] が動作するのは x が行ベクトルである場合のみ動作し、列ベクトルである場合は x = [x; newElem] が使われるはずです。 x(end+1) = newElem は、行ベクトル、列ベクトルの両方に使えます。

しかし、一般的には、成長するベクトルは避けるべきです。もし、これを頻繁に行うと、コードが遅くなる可能性があります。考えてみてください:配列を大きくするには、新しいスペースを確保し、すべてをコピーし、新しい要素を追加し、古い混乱を片付けることが必要です...事前に正しいサイズを知っていれば、かなりの時間の無駄です :)