05172018 01:38 PM
I am at a complete loss as to why I am getting this error...
My code looks like this:
proc logistic data = dataset;
by variable1 variable2;
model response = variable3;
roc "variable3" variable3
run;
The dataset is sorted on the variables in the by statement and no errors are given except for the 'All observations have the same response. No statistics are computed.' for one combination for variable1 and variable2. There are no missing variables and there is a 90/10 split between 0s and 1s for the response variable. I get the output I need but have no idea why I get this error for just one combination of variable1 and variable2. Any help would be greatly appreciated! Thanks in advance!
05172018 03:27 PM
Mostly (1). Missing values in the BY variables shouldn't be a problem.
That message indicates that the responses for the nonmissing observations are all the same value.
That's why I asked you to check NMISS for the explanatory variable. For example, the following data sets each give the message:
data Have;
do i = 1 to 10;
x = rand("Normal");
y = 1; /* all Y's are 1 */
end;
run;
proc logistic data=Have;
model y = x;
run;
data HaveMiss;
input x y @@;
datalines;
2 1 3 1 . 0 4 1 . 0
2 1 4 1 2 1 . 0 5 1
;
proc logistic data=HaveMiss;
model y = x;
run;
05172018 01:54 PM
I suspect the answer will be revealed if you run the following code and substitute in the values of the BY group that is giving the error. Post the result.
proc means data = dataset N NMISS MAX MIN MEAN STD;
where variable1=VAL1 and variable2=VAL2;
/* or for character: where variable1="VAL1" and variable2="VAL2"; */
var response variable3;
run;
05172018 02:03 PM
SAS Output






05172018 02:33 PM
I don't understand how those statistics could lead to the error you report. Could you please:
1. Paste in the portion of the SAS log that shows the submitted code
2. Paste in the portion of the code that gives the error, along with the NOTE that says "The previous error was for the BY group where Variable1=... and Variable2=..."
05172018 03:18 PM
That's what I thought. I just ran it now though and it's working so I am not sure where I went wrong previously or if I misread the log (my apologies!). Either way though thank you so much for your quick response! I really appreciate it. And for future reference this error would happen if I 1. I had responses that were all the same (either all 1s or all 0s) or 2. Had missing data for one of the by variables?? Is that correct?
05172018 03:27 PM
Mostly (1). Missing values in the BY variables shouldn't be a problem.
That message indicates that the responses for the nonmissing observations are all the same value.
That's why I asked you to check NMISS for the explanatory variable. For example, the following data sets each give the message:
data Have;
do i = 1 to 10;
x = rand("Normal");
y = 1; /* all Y's are 1 */
end;
run;
proc logistic data=Have;
model y = x;
run;
data HaveMiss;
input x y @@;
datalines;
2 1 3 1 . 0 4 1 . 0
2 1 4 1 2 1 . 0 5 1
;
proc logistic data=HaveMiss;
model y = x;
run;
05172018 03:30 PM
Perfect, thank you so much!
Need further help from the community? Please ask a new question.