Error -Index exceeds matrix dimensions.

1 Ansicht (letzte 30 Tage)
nkumar
nkumar am 10 Jan. 2013
I get error ,please tell how to rectify it,i have used 100x4 for training and rest for testing, even though i get error
clc
clear all
load fisheriris
groups = ismember(species,'setosa');
k=10;
groups =groups(1:100,:);
mt=meas(1:100,:);
mte=meas(101:end,:);
cvFolds = crossvalind('Kfold', groups, k);
cp = classperf(groups);
for i = 1:k
testIdx = (cvFolds == i);
trainIdx = ~testIdx;
svmModel = svmtrain(mt(trainIdx,:), groups(trainIdx), ...
'Autoscale',true, 'Showplot',false, 'Method','QP', ...
'BoxConstraint',2e-1, 'Kernel_Function','rbf', 'RBF_Sigma',1);
pred = svmclassify(svmModel, mte(testIdx,:), 'Showplot',false);
cp = classperf(cp, pred, testIdx);
end
  3 Kommentare
nkumar
nkumar am 10 Jan. 2013
Index exceeds matrix dimensions.
Error in ==> Untitl at 22 pred = svmclassify(svmModel, mte(testIdx,:), 'Showplot',false);
Jan
Jan am 12 Jan. 2013

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Walter Roberson
Walter Roberson am 10 Jan. 2013
Your cvFolds is constructed from groups, which is rows 1:100, but you use an index derived from that (testIdx) to index mte which is rows 101:end and so might be smaller.
  3 Kommentare
Jan
Jan am 12 Jan. 2013
How could we know, what you exactly want to achieve?
nkumar
nkumar am 12 Jan. 2013
i want to train the data with 100 data ant test the remaining

Melden Sie sich an, um zu kommentieren.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by