Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: st: pscore question
From
"Alistair Windsor (U of M)" <[email protected]>
To
[email protected]
Subject
Re: st: pscore question
Date
Wed, 09 Feb 2011 08:23:53 -0600
Dear Dan,
I don't know about pscore. You can use psmatch2 to do matching and can
set it to do matching with whatever strata you define. Do to confounding
variables you will probably want to stratify by school. You may also
wish to do matching within pscore quantiles.
The following is cribbed from some of my code and so there may be
unbalanced braces. I have removed a command that keeps r(att). I
practice I prefer to do all the analysis on my control group myself.
Since I am not keeping r(att) you can also drop the outcome(`outcomes')
part of my psmatch2 call.
Does this help,
Alistair
local controls /* list of your covariates here */
qui: gen byte support = .
qui: gen byte treated = .
qui: gen float weight = .
// randomize sort order
qui: gen random = runiform()
qui: sort random
// loop over each strata
foreach c of local classifications {
/* capture is necessary since some potentially some strata have
no students and this causes a crash unless capture
is present */
capture {
// this is the propensity matching scheme
qui: xi: psmatch2 `intervention' `controls' ///
if classification == "`c'", ///
outcome(`outcomes') pscore( /*Your variables here*/)
/* psmatch2 options */
/* _weight, _support and _treated will all be overwritten when
next psmatch2 is called. We wish to retain the values within
each strata */
qui: replace weight = _weight if ///
& classification == "`c'"
qui: replace treated = _treated if ///
& classification == "`c'"
qui: replace support = _support if ///
& classification == "`c'"
}
}
}
}
//Test the pseudo-control group for bias.
xi, noomit: pstest `controls', mweight(weight) treated(treated)
support(support)
On 2/9/11 1:33 AM, statalist-digest wrote:
From: Dan Kimmel<[email protected]>
Subject: st: pscore question
I'm working on a project predicting the effect of exposure to violence
on the health of American high school students. I am attempting to
use propensity score analysis to make causal inference about the
treatment effect; however, because these students are nested within
schools which vary in their mean level of violence, I have predicted
the propensity scores using Hierarchical Linear Modeling software.
My question is: Is there a way to use Becker and Ichino's pscore
program for STATA to distribute the students into blocks and check
that the balancing property is met -- but to do so using propensity
scores that have already been calculated, rather than by allowing the
program to calculate them itself? And if not, could such a function
be devised?
Thanks!
- --
Daniel M. Kimmel
Department of Sociology
University of Chicago
--
--
Alistair Windsor
380 Dunn Hall Ph: 901-678-4431
University of Memphis Fax: 901-678-2480
Memphis, TN 38152-3240
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/