Hello,
I am running into this error which is leaving me stumped. I am not sure what is going on and it is hard to find an easy(easier) to understand explanation of the error.
The following parameters have been set to 0, since the variables are a linear combination of other variables as shown.
RHQ420YES=INTERCEPT
My code is as follows:
PROC SURVEYLOGISTIC DATA=NH.MASTER_11_14_OC_HRT NOMCAR;
STRATA SDMVSTRA;
CLUSTER SDMVPSU;
WEIGHT COMBINED_WEIGHT_OC_HRT_4YR;
CLASS RHQ420 (PARAM=REF REF='No');
DOMAIN RHQ420;
MODEL IMMEDIATERECALL (EVENT='<=13')=RHQ420/ VADJUST=NONE;
FORMAT RHQ420 YESNO.
IMMEDIATERECALL IMMEDIATERECALL.;
RUN;
and the frequency chart
SAS Output
FrequencyPercentRow PctCol Pct | Table of RHQ420 by IMMEDIATERECALLRHQ420(Evertaken birthcontrol pills?) IMMEDIATERECALL<=13 >=14 TotalYesNoTotalFrequency Missing = 18355
|
Thank you for the reply.
I ran re-ran with the strata, cluster, and weights using proc surveyfreq and did not find any zero cells.
proc surveyfreq
data=NH.MASTER_11_14_OC_HRT;
strata sdmvstra;
cluster sdmvpsu;
TABLE RHQ420*IMMEDIATERECALL;
weight COMBINED_WEIGHT_OC_HRT_4YR;
FORMAT IMMEDIATERECALL IMMEDIATERECALL.
RHQ420 YESNO.;
RUN;
SAS Output
The SAS System |
29 |
61 |
19931 |
19151 |
780 |
308897448 |
63 | 997238 | 153386 | 3.3522 | 0.5600 |
865 | 18095632 | 1145792 | 60.8273 | 1.5853 |
928 | 19092870 | 1122048 | 64.1794 | 1.4627 |
130 | 1928290 | 206343 | 6.4818 | 0.6766 |
518 | 8728040 | 659213 | 29.3387 | 1.3916 |
648 | 10656330 | 722564 | 35.8206 | 1.4627 |
193 | 2925528 | 290156 | 9.8340 | 1.0276 |
1383 | 26823672 | 1587016 | 90.1660 | 1.0276 |
1576 | 29749200 | 1611067 | 100.000 |
I think it has something to do with my domain statement, however, I want/need to analyse according to that specific subgroup.
What I want to do is have RHQ420 (Ever take birth control pills?) group as my reference group. I've run the same procedure before using other variables with no issues, and again, I have no zero values in my frequency chart, stumped me even more.
Also, the log does not indicate any errors:
NOTE: PROCEDURE SURVEYFREQ used (Total process time):
real time 0.04 seconds
cpu time 0.04 seconds
1107 PROC SURVEYLOGISTIC DATA=NH.MASTER_11_14_OC_HRT NOMCAR;
1108 STRATA SDMVSTRA;
1109 CLUSTER SDMVPSU;
1110 WEIGHT COMBINED_WEIGHT_OC_HRT_4YR;
1111 CLASS RHQ420 (PARAM=REF REF='No');
1112 DOMAIN RHQ420;
1113 MODEL IMMEDIATERECALL (EVENT='<=13')=RHQ420/ VADJUST=NONE;
1114 FORMAT RHQ420 YESNO.
1115 IMMEDIATERECALL IMMEDIATERECALL.;
1116 RUN;
NOTE: PROC SURVEYLOGISTIC is modeling the probability that IMMEDIATERECALL='<=13'.
NOTE: Convergence criterion (GCONV=1E-8) satisfied.
NOTE: PROC SURVEYLOGISTIC is modeling the probability that IMMEDIATERECALL='<=13'.
NOTE: Convergence criterion (GCONV=1E-8) satisfied.
NOTE: PROC SURVEYLOGISTIC is modeling the probability that IMMEDIATERECALL='<=13'.
NOTE: Convergence criterion (GCONV=1E-8) satisfied.
NOTE: PROCEDURE SURVEYLOGISTIC used (Total process time):
real time 0.34 seconds
cpu time 0.32 seconds
@MVP wrote:
Hello,
I am running into this error which is leaving me stumped. I am not sure what is going on and it is hard to find an easy(easier) to understand explanation of the error.
The following parameters have been set to 0, since the variables are a linear combination of other variables as shown.
RHQ420YES=INTERCEPT
My code is as follows:
PROC SURVEYLOGISTIC DATA=NH.MASTER_11_14_OC_HRT NOMCAR;
STRATA SDMVSTRA;
CLUSTER SDMVPSU;
WEIGHT COMBINED_WEIGHT_OC_HRT_4YR;
CLASS RHQ420 (PARAM=REF REF='No');
DOMAIN RHQ420;
MODEL IMMEDIATERECALL (EVENT='<=13')=RHQ420/ VADJUST=NONE;
FORMAT RHQ420 YESNO.IMMEDIATERECALL IMMEDIATERECALL.;
RUN;
and the frequency chart
SAS Output
The FREQ Procedure
FrequencyPercentRow PctCol Pct Table of RHQ420 by IMMEDIATERECALLRHQ420(Evertaken birthcontrol pills?) IMMEDIATERECALL<=13 >=14 TotalYesNoTotalFrequency Missing = 18355
63 4.00 6.79 32.64
865 54.89 93.21 62.55
928 58.88
130 8.25 20.06 67.36
518 32.87 79.94 37.45
648 41.12
193 12.25
1383 87.75
1576 100.00 Can anyone help shed some light on my issue?Thanks,Mark
Try creating another variable with the same values as your domain variable and use that instead on the domain statement. If you have a format assigned to your current domain variable make sure to do the same for the new one.
I created a variable the same as my domain variable, but the same error came up:
DATA NH.MASTER_11_14_OC_HRT;
SET NH.MASTER_11_14_OC_HRT;
IF RHQ420=. THEN RHQ420X=.;
IF RHQ420=1 THEN RHQ420X=1;
ELSE IF RHQ420=2 THEN RHQ420X=2;
RUN;
PROC SURVEYLOGISTIC DATA=NH.MASTER_11_14_OC_HRT NOMCAR;
STRATA SDMVSTRA;
CLUSTER SDMVPSU;
WEIGHT COMBINED_WEIGHT_OC_HRT_4YR;
CLASS RHQ420 (PARAM=REF REF='No');
DOMAIN RHQ420X;
MODEL IMMEDIATERECALL (EVENT='<=13')=RHQ420/ VADJUST=NONE;
FORMAT RHQ420 YESNO.
RHQ420X YESNO.
IMMEDIATERECALL IMMEDIATERECALL.;
RUN;
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.