Logistic Regression not display all data like R

1 次查看(过去 30 天)
Hello ! I'm using version 2016a and trying to code my previous code from R to Matlab. When I do a Logistic Regression on R, it shows me all coeficients for each variable, like this image:
But when I do it from Matlab (same Data Set, same 'formula'), the results are missing:
modelo = 'LSTATUS ~ METODO + URI + URL + USERAGENT + BROWSER + COOKIE';
mdl = fitglm(FiltroA, modelo, 'Distribution','binomial');
mdl
The Data Set (FiltroA) was imported as a Table
Each field in R represent a category. For example, USERAGENT1 = Windows, USERAGENT2= Linux, etc. Someone know how to use a logistic regression on Matlab to show all categories?

采纳的回答

Brendan Hamm
Brendan Hamm 2016-7-26
Your issue is that in R these variables are interpreted as categorical whereas in MATLAB they are being interpreted as continuous predictor variables. You can either specify them as categorical variables in fitglm:
modelo = 'LSTATUS ~ METODO + URI + URL + USERAGENT + BROWSER + COOKIE';
mdl = fitglm(FiltroA, modelo, 'Distribution','binomial','CategoricalVars',1:6);
or convert each of them to a categorical variable ahead of time.
FiltroA.METODO = categorical(FiltroA.METODO);
% Repeat for other variables
This can all be accomplished with a call to varfun:
Filtro = varfun(@categorical,FiltroA(:,1:end-1)) % Assuming LSTATUS is the last variable in table
Filtro.Properties.VariableNames = FiltroA.Properties.VariableNames(1:end-1);
FiltroA(:,1:end-1) = Filtro;
  1 个评论
Leonardo Silva
Leonardo Silva 2016-7-26
Brendan, the 1st option, using 'CategoricalVars' saved my day. I'll try the other two options after and try to optimize it. TYVM ! :)

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by