Index exceeds the number of array elements

1 回表示 (過去 30 日間)
G. Nardi
G. Nardi 2019 年 1 月 16 日
コメント済み: G. Nardi 2019 年 1 月 17 日
I am still in school learning matlab and need some help. I have seen other ones like this but they don't go into what to do with a double.
I loaded a file that has a double 10000x2
and I am getting this error.
Index exceeds the number of array elements (2).
Error in Week2(line 14)
classTwoTrainingIndices = randomizedIndices(1:6000);
2019-01-16_18-30-31.png
2019-01-16_18-31-42.png
  1 件のコメント
Walter Roberson
Walter Roberson 2019 年 1 月 17 日
It is easier for us to work with code rather than with images of code.

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

採用された回答

Walter Roberson
Walter Roberson 2019 年 1 月 17 日
randsample() by default is selection without replacement. When you pass in an integer as the first parameter, the implication is to select from 1 to the integer. As you are passing in the same integer as the second parameter, the effect you are going to get is a permutation of the numbers from one to the integer. Since NumberOfClassOneSamples is 2, that is going to be a random permutation of [1 2]... which will give you either [1; 2] or [2; 1] as the answer.
You then try to take the first 6000 entries in that pair of numbers.
In your code each row appears to represent a sample. The number of samples in of data would then be size(ClassOne, 1) not size(ClassOne,2)
Also, classOneTrainingData should be classOne(classOneTrainingIndices, :) because you want all of the entries in the row.
  1 件のコメント
G. Nardi
G. Nardi 2019 年 1 月 17 日
Thanks I appreciate the explanation. It was great great help!

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

タグ

製品


リリース

R2018b

Translated by