インデックスが配列素数(0)を超えています

7 次查看(过去 30 天)
瞬人 渡邉
瞬人 渡邉 2020-10-15
回答: Naoya 2020-10-19
per=randperm(100:20);
for i=1:20
subpulot(4,5,i);
imshow(imds,Files{perm(i)});
と打つと【インデックスが配列素数(0)をこえています】というエラーが出ます。
このエラーの意味がわかりません。
MATLAB2020a
を使用しています。
  1 个评论
stozaki
stozaki 2020-10-15
渡邉 様
幾つか確認させて頂けますか?
  1. permは未定義ですが、perの事でしょうか?
  2. Filesは未定義です。どの様な変数定義をすれば良いでしょうか?
  3. imdsは未定義です。どの様な変数定義をすれば良いでしょうか?
  4. subpulot ➔ subplot という認識で宜しいでしょうか?
  5. for 文 はimshowの直ぐあとで endをして良いですか?
記載頂きましたプログラムだけでは情報が不足しており、エラーの再現が出来ませんでした。
ご確認をお願いいたします。
stozaki

请先登录,再进行评论。

回答(1 个)

Naoya
Naoya 2020-10-19
頂きましたコードの1行目
>> per=randperm(100:20);
>> per
per =
1×0 の空の double 行ベクトル
で定義される per が空配列になっているようです。
"100:20" は 100 から 20 まで 1刻みのベクトルを生成するという意味となります。
※ "X:Y" で X が Y よりも大きい場合は空配列となります。

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

Community Treasure Hunt

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

Start Hunting!