配列サイズの取得

조회 수: 92 (최근 30일)
遥 荻津
遥 荻津 2023년 7월 7일
댓글: 遥 荻津 2023년 7월 10일
同じ配列のサイズが場所によって変わります。size(In)と画面に出力されるサイズは13243、ワークスペースに表示されるものとインデックスに入れられる最大数は12898です。原因がわからないので教えていただきたいです。

채택된 답변

Kenjiro Sugimoto
Kenjiro Sugimoto 2023년 7월 7일
127行目時点での In のサイズは確かに 13243x1 ですが、128行目からのfor文の中で In の長さが短くなっているものと予想します。特に気になる点は137行目のif文の処理で、ここで In のg番目が除去されています。この処理が複数回呼び出されることで、Inのサイズが 12898x1 まで短くなっていませんでしょうか。
以下のコードですと、除去の挙動がわかりやすいかと思います。
data = [1 2 3 4 5]
data = 1×5
1 2 3 4 5
size(data)
ans = 1×2
1 5
data(3) = [] % 3番目の要素を除去
data = 1×4
1 2 4 5
size(data)
ans = 1×2
1 4
  댓글 수: 1
遥 荻津
遥 荻津 2023년 7월 10일
なるほど。確かにそうなりますね! 返答ありがとうございます。

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 コマンドの入力에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!