03-30-2016 10:36 AM
I am trying to analyze data from the Behavioral Risk Factor Surveillance System (BRFSS) and having trouble with my proc surveylogistic. My table is title Adjusted Odds Ratio (AOR) and the 95% confidence intervals according to tooth loss for the variables in the final regression analysis. I know I have to correct my MODEL statement to contain all variables I'm controlling for. My question is what else goes in the CLASS statement? Does each categorical variable need to be listed in the CLASS statement? Below is my code
*proc surveylogistic; data Mylib.newbrfss_subgroup; set Mylib.newbrfss_1; subgroup=0; if _RFSMOK3 =1 then subgroup =1; MISSTEETH=0; if (RMVTETH3=1 or RMVTETH3=2 or RMVTETH3=3 )then MISSTEETH=1; if RMVTETH3=8 then MISSTEETH = 2; RUN; proc surveylogistic data = Mylib.newbrfss_subgroup; Class sex (ref='2')/param=ref; Domain subgroup; Strata _Ststr; Cluster _Psu; Weight _LLCPWT; model MISSTEETH (event='1')= _RFSMOK3 sex; run;
03-30-2016 10:54 AM
That would be best practice.
You may also want to include the option NOMCAR on the Proc statement. Due to skip patterns and other issues with BRFSS data is not actually always missing completely at random. The option is unlikely to make big differences but you should be aware of it.
You may be adding an artifact on your Subgroup and Missteeth variables if the original variables are missing.
Better would be:
If not missing(_RFSMOK3 ) then subgroup = (_RFSMOK3 =1);
if not missing(RMVTETH3) then MISSTEETH=0;