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

20 ビュー (過去 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 Center および File ExchangeMatrix Indexing についてさらに検索

Community Treasure Hunt

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

Start Hunting!