Hi there,
I run a logistic regression with binary outcomes 0 and 1. I obtained the confusion matrix. However the predicted value of 1 is missing. All observations have a predictive value of 0. Looking at the predicted probabilities, the probability that Y = 1 is smaller than Y = 0 for all observations. Does anyone know the reason and how to fix this problem?
Thanks.
Thank you for taking the question.
You are right it can't be fixed.The data contains 3 millions of observations with 70,000 missing values ( about 2%) that SAS ignores as usual.
My question is why it would happen even thouh the data definitely has value Y=1. Does it have to do with the predictors?
Thanks again
I forgot to mention that there was no problem of convergence. The log file did not display any warning
If I were to guess, it would be that the predictors have a very small effect, relative to the constant term in the model. Study the following simulated data. The explanatory makes a relatively small contribution to the linear model. Even though x variable is significant (small p-value), the variable just doesn't have much of an effect. The predicted probabilities are all less than 0.5.
data a;
call streaminit(1234);
do i = 1 to 1000;
x = rand("normal");
eta = -1 + 0.15*x;
y = rand("bernoulli", logistic(eta));
output;
end;
run;
proc logist data=a plots(only)=fitplot;
model y(event='1') = x;
run;
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.
Find more tutorials on the SAS Users YouTube channel.