Error -Index exceeds matrix dimensions.

1 vue (au cours des 30 derniers jours)
nkumar
nkumar le 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 commentaires
nkumar
nkumar le 10 Jan 2013
Index exceeds matrix dimensions.
Error in ==> Untitl at 22 pred = svmclassify(svmModel, mte(testIdx,:), 'Showplot',false);
Jan
Jan le 12 Jan 2013

Connectez-vous pour commenter.

Réponses (1)

Walter Roberson
Walter Roberson le 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 commentaires
Jan
Jan le 12 Jan 2013
How could we know, what you exactly want to achieve?
nkumar
nkumar le 12 Jan 2013
i want to train the data with 100 data ant test the remaining

Connectez-vous pour commenter.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by