MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn moreOpportunities for recent engineering grads.

Apply Today**New to MATLAB?**

Asked by nadia naji
on 25 Oct 2012

i have some problem with svmtrain. i extract some pixel form different frame and base on their value in 3 channels train with svm i have about 20000 pixel and when i use svmtrain sometimes i get this error but when my pixel is low for example 100 pixel i dont get this error

??? Error using ==> svmtrain at 197 TRAINING data must not contain missing values

i use matlabR2009 7.8

do you have any suggestion ?please help me?

options = optimset('maxiter',1000); svmstruct_linear=svmtrain(train_y,target_y); svmstruct_quadratic=svmtrain(train_y,target_y,'Kernel_Function','quadratic','Method','QP',... 'quadprog_opts',options);

*No products are associated with this question.*

Answer by Alan Weiss
on 25 Oct 2012

Did you check whether there are any NaN values in train_y or target_y? For example, examine

sum(isnan(train_y) + isinf(train_y))

Alan Weiss

MATLAB mathematical toolbox documentation

## 1 Comment

## Walter Roberson

Direct link to this comment:http://www.mathworks.com/matlabcentral/answers/51814#comment_107133

Stray thought: could it be that when you use a small number of pixels, you do not happen to have any pixels with value 0, but that you get a 0 when you use the full set of pixels?

I do not know if 0 is special to svmtrain, but I could imagine it being special in the class information (i.e., target_y in your case)