BookmarkSubscribeRSS Feed
Fluorite | Level 6

I've been running proc psmatch for an analysis, using 1:1 nearest neighbor matching on propensity scores calculated from proc logistic.


I did not include the WEIGHT=ATT option in the ASSESS statement to my code.


Are the matching results still valid? Which weighting scheme is proc psmatch using as a default? I do see in the output dataset of matched records _MATCHWGT_=1 for every record.


proc psmatch data=logistic_output;
  	class class age gender;
  	psdata ps=ps  treatvar=class(treated='Treatment');
	match method=greedy(k=1) exact=(age gender) caliper=0.25;
   	output out(obs=match)=psm_results;
Fluorite | Level 6

Ah hold on - if I add an ASSESS / WEIGHT=ATTWGT; statement to my proc psmatch code I see the following message after running.


WARNING: WEIGHT=ATEWGT and WEIGHT=ATTWGT are not allowed if a MATCH statement is specified. WEIGHT=MATCHWGT is used.

Ok so looks like weights can't be used for 1:1 nearest neighbor matching?


Am I still estimating ATT when I run a proc ttest on the matched output data even if WEIGHT=ATT wasn't used?



Registration is open! SAS is returning to Vegas for an AI and analytics experience like no other! Whether you're an executive, manager, end user or SAS partner, SAS Innovate is designed for everyone on your team. Register for just $495 by 12/31/2023.

If you are interested in speaking, there is still time to submit a session idea. More details are posted on the website. 

Register now!

What is Bayesian Analysis?

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.

Get the $99 certification deal.jpg



Back in the Classroom!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 1 reply
  • 1 in conversation