Statistical Procedures

Programming the statistical procedures from SAS
BookmarkSubscribeRSS Feed
derek_cruik
Calcite | Level 5

Hello,

 

I'm working with the PSMATCH procedure and testing out different matching methods.  When using the REPLACE matching method (k=1), I was wondering if there is a way to limit the number of times a single control case can be used to be matched with treated cases?

 

Looking at my matched output, I have 95% of all treated cases being matched with 6 or less control cases; however, I do have some extreme observations where a single control case is used to be matched with 100 different treated cases.  Is there any way that I can limit it so that doesn't happen within the procedure itself, or is this something that I may need to look into post-match?

 

Any insight or help is very much appreciated.  Thanks!

3 REPLIES 3
SteveDenham
Jade | Level 19

The only thing that comes quickly to mind is to loosen the matching criteria.  It sounds as if the only "possible" matches for the cases are the selected controls.

 

SteveDenham

derek_cruik
Calcite | Level 5
Thanks for your reply. I've already turned the caliper off when matching with replacement. I know the whole concept of matching with replacement is so that you can keep all of the treated cases in your match output.

I've seen that there are some potential macros that have been built that may be able to limit the number of times a control case can be used to match to a treated case, but it doesn't appear that it would be using the PSMATCH procedure so I would need to look into creating the variable assessment output myself.

Thanks again,
Derek
SteveDenham
Jade | Level 19

I think you are right. A method might involve something like:

Use propensity scoring to match until a record is used a maximum number of times (say 5).

Remove that record from the controls data.

Repeat as needed until all cases are matched.

 

This would result in a stratified matching, with the matching getting worse as you go along.  Your subsequent analysis should take this into account somehow.

 

SteveDenham

sas-innovate-white.png

Our biggest data and AI event of the year.

Don’t miss the livestream kicking off May 7. It’s free. It’s easy. And it’s the best seat in the house.

Join us virtually with our complimentary SAS Innovate Digital Pass. Watch live or on-demand in multiple languages, with translations available to help you get the most out of every session.

 

Register now!

What is ANOVA?

ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 3 replies
  • 1152 views
  • 1 like
  • 2 in conversation