Logistic Regression - Error: The sizes of B and X are incompatible.

1 view (last 30 days)
I am trying to use Logistic regression to predict the class of IRIS data set.
data=LoadIRISData();
class=zeros(150,1);
class(1:50,1)=1;
class(51:100,1)=2;
class(101:150,1)=3;
dataf=[data(1:20,:);data(51:70,:);data(101:120,:)];
classf=[class(1:20,:);class(51:70,:);class(101:120,:)];
betaHatNorm=mnrfit(dataf,classf);
datat=[data(21:50,:);data(71:100,:);data(121:150,:)];
pHatNom = mnrval(betaHatNom,datat);
When I run the code, I get the following error.
??? Error using ==> mnrval at 191
The sizes of B and X are incompatible.
Error in ==> logireg at 15
pHatNom = mnrval(betaHatNom,datat);
I am new with logistic regression, I am not sure, why I get the error. I even tried making the rows number of dataf and datat same but without success.
Thank you.

Accepted Answer

Tom Lane
Tom Lane on 1 Jun 2012
If I type
load fisheriris
data = meas
and then run your code after from the "load" line, then it works okay after I correct the spelling of betaHatNorm on the last line. Could it be you have two versions of that variable, and you're picking up the wrong one?

More Answers (0)

Categories

Find more on Statistics and Machine Learning Toolbox in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!