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: Analyzing multiple mediators
From
John Antonakis <[email protected]>
To
[email protected]
Subject
Re: st: Analyzing multiple mediators
Date
Thu, 22 Nov 2012 21:08:31 +0100
Hi Isok:
One thing to pay attention to is that all these methods assume that the
is exogenous. If your mediator is endogenous (depends on the exogenous
variables), it is possible that it correlates with omitted causes in the
y-equation. Thus, -sureg- unless iterated (option -isure-), you will not
get consistent estimates (see documentation in Stata).
To obtain consistent estimates where you have endogenous regressors
you'll need use 2SLS, 3SLS (with -reg3-), or to correlate cross-equation
disturbances using maximum likelihood estimation (with -sem-) . For
identification, you'll need as many "instruments" (exogenous variables)
as you have endogenous regressors. Ideally you'll have more so you can
do overidentification tests.
For a basic intro to all this see (see discussion around "two
inconvenient demonstrations" and "Two-stage least squares in practice:
An example"):
Antonakis, J., Bendahan, S., Jacquart, P., & Lalive, R. (in press).
Causality and endogeneity: Problems and solutions. In D.V. Day (Ed.),
The Oxford Handbook of Leadership and Organizations.
http://www.hec.unil.ch/jantonakis/Causality_and_endogeneity_final.pdf
See also:
Antonakis, J., Bendahan, S., Jacquart, P., & Lalive, R. (2010). On
making causal claims: A review and recommendations. The Leadership
Quarterly, 21(6). 1086-1120.
http://www.hec.unil.ch/jantonakis/Causal_Claims.pdf
Best,
J.
__________________________________________
Prof. John Antonakis
Faculty of Business and Economics
Department of Organizational Behavior
University of Lausanne
Internef #618
CH-1015 Lausanne-Dorigny
Switzerland
Tel ++41 (0)21 692-3438
Fax ++41 (0)21 692-3305
http://www.hec.unil.ch/people/jantonakis
Associate Editor
The Leadership Quarterly
__________________________________________
> Hi,
>
> I'm trying to analyze a model with multiple mediators, as described
in ULCA
> stata FAQ site (http://www.ats.ucla.edu/stat/stata/faq/mulmediation.htm).
> The analyses are based on Preacher & Hayes (2008) method and uses
> combination of -sureg- and -nlcom- commands to get the coefficients and
> indirect effects coefficients, respectively. Then to get the standard
> errors, it demonstrates use of ado-program called 'bootmm' and subsequent
> bootstrap post-estimation command.
>
> Where I'm having trouble with this combination of analyses is at the last
> stage with bootstrap command. The error msg reads, "insufficient
> observations to compute jackknife standard errors; no results will be
saved"
> r(2000).
>
> There are 397 observations included in the analyses and -sureg-
command runs
> fine. I'm not sure where the error is coming from. Below is the
syntax I
> used. Any suggestion or insight into resolving this problem would be
greatly
> appreciated!
>
> Thanks,
> isok
>
>
*---------------------------------------------------------------------------
> */
> /* H2a: Mediation Test IVs(PRD) MV(GC3E GC3D RC3E RC3D) DV(CESD)
> CV(controls)*/
> /* surge (mv1 iv cv)(mv2 iv2 cv)(dv mv1 mv2 iv cv)
> */
> /* nlcom [mv1]_b[iv]*[dv]_b[mv1]
> */
>
/*--------------------------------------------------------------------------
> -*/
>
> /*-sureg-&-nlcom- methods*/
>
> sureg (GC3E PRD i.SEX AGE EDU i.UNEMP i.MARSTS i.NATIVITY) ///
> (GC3D PRD i.SEX AGE EDU i.UNEMP i.MARSTS i.NATIVITY) ///
> (RC3E PRD i.SEX AGE EDU i.UNEMP i.MARSTS i.NATIVITY) ///
> (RC3D PRD i.SEX AGE EDU i.UNEMP i.MARSTS i.NATIVITY) ///
> (CESD GC3E GC3D RC3E RC3D PRD i.SEX AGE EDU i.UNEMP i.MARSTS
> i.NATIVITY) if NMV==1
>
> //Indirect via GC3E
> nlcom [GC3E]_b[PRD]*[CESD]_b[GC3E]
> //Indirect via GC3D
> nlcom [GC3D]_b[PRD]*[CESD]_b[GC3D]
> //Indirect via GC3E
> nlcom [RC3E]_b[PRD]*[CESD]_b[RC3E]
> //Indirect via GC3D
> nlcom [RC3D]_b[PRD]*[CESD]_b[RC3D]
>
> //Total indirect
> nlcom [GC3E]_b[PRD]*[CESD]_b[GC3E]+[GC3D]_b[PRD]*[CESD]_b[GC3D] ///
> +[RC3E]_b[PRD]*[CESD]_b[RC3E]+[RC3D]_b[PRD]*[CESD]_b[RC3D]
>
> capture program drop bootmm
> program bootmm, rclass
> syntax [if] [in]
> sureg (GC3E PRD i.SEX AGE EDU i.UNEMP i.MARSTS i.NATIVITY) ///
> (GC3D PRD i.SEX AGE EDU i.UNEMP i.MARSTS i.NATIVITY) ///
> (RC3E PRD i.SEX AGE EDU i.UNEMP i.MARSTS i.NATIVITY) ///
> (RC3D PRD i.SEX AGE EDU i.UNEMP i.MARSTS i.NATIVITY) ///
> (CESD GC3E GC3D RC3E RC3D PRD i.SEX AGE EDU i.UNEMP i.MARSTS
> i.NATIVITY) if NMV==1
> return scalar indGC3E = [GC3E]_b[PRD]*[CESD]_b[GC3E]
> return scalar indGC3D = [GC3D]_b[PRD]*[CESD]_b[GC3D]
> return scalar indRC3E = [RC3E]_b[PRD]*[CESD]_b[RC3E]
> return scalar indRC3D = [RC3D]_b[PRD]*[CESD]_b[RC3D]
> return scalar indtotal =
> [GC3E]_b[PRD]*[CESD]_b[GC3E]+[GC3D]_b[PRD]*[CESD]_b[GC3D] ///
>
> +[RC3E]_b[PRD]*[CESD]_b[RC3E]+[RC3D]_b[PRD]*[CESD]_b[RC3D]
> end
>
> bootstrap r(indGC3E) r(indGC3D) r(indRC3E) r(indRC3D) r(indtotal), bca
> reps(1000) nodots: bootmm
> estat boot, percentile bc bca
>
>
> *
>
>
> *
> * For searches and help try:
> * http://www.stata.com/help.cgi?search
> * http://www.stata.com/support/faqs/resources/statalist-faq/
> * http://www.ats.ucla.edu/stat/stata/
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/faqs/resources/statalist-faq/
* http://www.ats.ucla.edu/stat/stata/