I am trying to run several exact logistic regressions after using inverse probability weighting; however, it does not seem like I am able to run an EXACT statement and a WEIGHT statement simultaneously. Is there a work around? I am using exact logistic regression instead of logistic regression due to sample size concerns.
Here is my code:
proc psmatch data=DATA region=allobs; class TREATMENT VAR1; psmodel TREATMENT(Treated='1')= VAR1 VAR2 VAR3 VAR4 VAR5; ASSESS LPS VAR=(VAR2 VAR3 VAR4 VAR5)/VARINFO PLOTS=(BOXPLOT BARCHART) WEIGHT=ATEWGT; output out(obs=ALL)=PSDATA lps=Lps5 ATEWGT=ATEWGT5 PS=PS5; run; PROC LOGISTIC DATA=PSDATA; CLASS VAR6 TREATMENT(REF='0'); MODEL VAR6=TREATMENT; EXACT TREATMENT; WEIGHT ATEWGT2; RUN;
The log warning I get is: "WARNING: The EXACT statement is ignored when the WEIGHT statement is specified."
Appreciate your help.
From the documentation for Proc Logistic and the Exact statement:
Exact analyses are not performed when you specify a WEIGHT statement, a link other than LINK=LOGIT or LINK=GLOGIT, an offset variable, the NOFIT option, or a model selection method. Exact estimation is not available for ordinal response models.
What exactly are your sample size concerns?
If I were to make contingency tables for treatment and each outcome, several cell frequencies and expected cell frequencies would be small (some are less than 1). I would normally use Fisher's exact test, but with non-integer weights from the IPW, that is not an option, hence my pursuit to use exact logistic regression. I know this is possible in StatXact, but I do not have a license for it.
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.