Bookmark and Share

Notice: On March 31, it was announced that Statalist is moving from an email list to a forum. The old list will shut down on April 23, and its replacement, statalist.org is already up and running.


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

st: metan - consistency between six, two and three variable forms


From   Richard Palmer-Jones <rpjstatalist@googlemail.com>
To   statalist@hsphsun2.harvard.edu
Subject   st: metan - consistency between six, two and three variable forms
Date   Thu, 24 Nov 2011 17:50:12 +0000

Dear Readers

I was surprised to find that when I calculated effect sizes (d) using
the six varaiale form (n_, mean_ and sd_treatment followed by n_,
mean_ and sd_controls I do not get the same results as with the two (d
and se_d) and three (d, ci_lo and ci_hi) forms, when I transform the
six variables into the two and three variables.


use http://fmwww.bc.edu/repec/bocode/m/metan_example_data, clear

* N, means and standard deviations of treatment and control - example
given in help metan
metan tsample tmean tsd csample cmean csd, by(type_study) sgweight ///
	fixed second(random) rfdist counts label(namevar = id) ///
	favours(Treatment reduces blood pressure # Treatment increases blood
pressure) name(_6vars, replace)

* effect size and its standard error
gen d : "mean difference"  = tmean - cmean	// computes mean effect
* variance of mean effect from Wilson effect size calculator
gen var_d : "variance of d" = (( tsample +  csample) / ( tsample *
csample ) + d^2 / (2 * ( tsample + csample)))
gen sd_d = sqrt(var_d)
gen se_d : "standard error of d" = sqrt(var_d) / sqrt(tsample +  csample)

* 95% cis
gen ci_95_d_lower = d - invnormal(0.975) * sqrt(var_d) / sqrt(tsample
+  csample)
gen ci_95_d_upper = d + invnormal(0.975) * sqrt(var_d) / sqrt(tsample
+  csample)

* three variable method
metan d ci_95_d_lower ci_95_d_upper , by(type_study) ///
	sgweight fixed second(random) rfdist  label(namevar = id) /// // counts
	favours(Treatment reduces blood pressure # Treatment increases blood
pressure)name(_3vars, replace)

* two variable method
metan d se_d, by(type_study) ///
	sgweight fixed second(random) rfdist  label(namevar = id) /// // counts
	favours(Treatment reduces blood pressure # Treatment increases blood
pressure) name(_2vars, replace)


I have obviously got the wrong end of the stick - is it that the two
and three variable forms are for OR/RR only?

Is there any way round this? I am trying to do a meta analysis on
papers that present different statistics - using different estimation
methods, etc., and want to convert them to a common form that can be
input to a meta analysis.

As usual, all advice much appreciated.

Richard
*
*   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/


© Copyright 1996–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   Site index