You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
256 lines
8.0 KiB
Plaintext
256 lines
8.0 KiB
Plaintext
8 months ago
|
/*
|
||
|
|
||
|
*! metatrim dialog version 1.0.2, 22 Jul 2003, T. J. Steichen, steichen@triad.rr.com
|
||
|
*! for metatrim version 1.0.5, 18 Oct 2002, T. J. Steichen, steichen@triad.rr.com
|
||
|
|
||
|
Nonparametric "trim and fill" analysis of publication bias in meta-analysis
|
||
|
---------------------------------------------------------------------------
|
||
|
|
||
|
syntax: metatrim varlist [if] [in]
|
||
|
[ , Vari CI REffect PRint Funnel EForm LEvel(real 95) ESTimat(R|L|Q)
|
||
|
GRaph IDvar(varname) FLIP MIXED SAve(filename [, REPLACE]) * ]
|
||
|
|
||
|
Install in User Statistics menu via Stata commands:
|
||
|
. window menu append item "stUserStatistics" "meta&trim ("Trim and Fill" Analysis)" "db metatrim"
|
||
|
. window menu refresh
|
||
|
To permanently install, place the commands in your -profile.do- file.
|
||
|
*/
|
||
|
|
||
|
VERSION 8.0
|
||
|
|
||
|
INCLUDE _std_small
|
||
|
DEFINE _dlght 230
|
||
|
INCLUDE header
|
||
|
|
||
|
HELP hlp1, view("help metatrim")
|
||
|
RESET res1, label("Reset")
|
||
|
|
||
|
DIALOG main, label(`"metatrim 1.0.5 - "Trim and Fill" Analysis"') tabtitle("Main")
|
||
|
BEGIN
|
||
|
GROUPBOX gb_data 10 5 330 85, ///
|
||
|
label("Type of Data")
|
||
|
RADIO r_se 15 20 100 ., ///
|
||
|
label("Theta, SE") first ///
|
||
|
onclickon(script main_se_on) ///
|
||
|
option(NONE)
|
||
|
RADIO r_var 115 @ 100 ., ///
|
||
|
label("Theta, Var") middle ///
|
||
|
onclickon(script main_var_on) ///
|
||
|
option("var")
|
||
|
RADIO r_ci 215 @ 110 ., ///
|
||
|
label("exp(Theta), CI") last ///
|
||
|
onclickon(script main_ci_on) ///
|
||
|
option("ci")
|
||
|
|
||
|
TEXT tx_se 15 40 320 ., ///
|
||
|
label("Vars for theta, se(theta), in that order")
|
||
|
VARLIST vl_se @ _ss @ ., ///
|
||
|
label("Vars for theta, se(theta)")
|
||
|
TEXT tx_var @ 40 320 ., ///
|
||
|
label("Vars for theta, var(theta), in that order")
|
||
|
VARLIST vl_var @ _ss @ ., ///
|
||
|
label("Vars for theta, var(theta)")
|
||
|
TEXT tx_ci @ 40 320 ., ///
|
||
|
label("Vars for exp(theta), CI_LL, CI_UL, in that order")
|
||
|
VARLIST vl_ci @ _ss @ ., ///
|
||
|
label("Vars for exp(theta), CI_LL, CI_UL")
|
||
|
|
||
|
GROUPBOX gb_estimat 10 95 90 80, ///
|
||
|
label("Estimate")
|
||
|
RADIO r_linear 15 110 80 ., ///
|
||
|
label("Linear") first ///
|
||
|
option(NONE)
|
||
|
RADIO r_run @ 130 @ ., ///
|
||
|
label("Run") middle ///
|
||
|
option("est(run)")
|
||
|
RADIO r_quadratic @ 150 @ ., ///
|
||
|
label("Quadratic") last ///
|
||
|
option("est(quadratic)")
|
||
|
|
||
|
GROUPBOX gb_pool 105 95 90 60, ///
|
||
|
label("Pooling")
|
||
|
RADIO r_fixed 110 110 80 ., ///
|
||
|
label("Fixed") first ///
|
||
|
option(NONE)
|
||
|
RADIO r_random @ 130 @ ., ///
|
||
|
label("Random") last ///
|
||
|
option("reffect")
|
||
|
|
||
|
CHECKBOX cb_eform 205 100 70 ., ///
|
||
|
label("Eform") ///
|
||
|
option("eform")
|
||
|
|
||
|
CHECKBOX cb_flip 205 120 70 ., ///
|
||
|
label("Flip") ///
|
||
|
option("flip")
|
||
|
|
||
|
CHECKBOX cb_mixed 205 140 70 ., ///
|
||
|
label("Mixed") ///
|
||
|
option("mixed")
|
||
|
|
||
|
CHECKBOX cb_graph 275 100 70 ., ///
|
||
|
label("Graph") ///
|
||
|
onclickon(program main_cb_graph_on) ///
|
||
|
onclickoff(program main_cb_graph_off) ///
|
||
|
option("graph")
|
||
|
|
||
|
CHECKBOX cb_funnel 275 120 70 ., ///
|
||
|
label("Funnel") ///
|
||
|
option("funnel")
|
||
|
|
||
|
CHECKBOX cb_print 275 140 70 ., ///
|
||
|
label("Print") ///
|
||
|
option("print") ///
|
||
|
onclickon(program main_cb_print_on) ///
|
||
|
onclickoff(program main_cb_print_off)
|
||
|
|
||
|
CHECKBOX cb_id 110 157 100 ., ///
|
||
|
label("ID Variable:") ///
|
||
|
onclickon(main.vn_id.enable) ///
|
||
|
onclickoff(main.vn_id.disable)
|
||
|
VARNAME vn_id 210 160 130 ., ///
|
||
|
label("ID Variable") ///
|
||
|
option("id")
|
||
|
|
||
|
CHECKBOX cb_fill_save 10 185 90 ., ///
|
||
|
label("Save filled:") ///
|
||
|
onclickon(main.fi_fill_save.enable) ///
|
||
|
onclickoff(main.fi_fill_save.disable)
|
||
|
FILE fi_fill_save 110 185 230 ., ///
|
||
|
save ///
|
||
|
label("File Name") ///
|
||
|
error("Save File Name") ///
|
||
|
dialogtitle("Save file") ///
|
||
|
filter("Stata Data|*.dta") ///
|
||
|
option("save")
|
||
|
|
||
|
CHECKBOX cb_gph_save 10 210 90 ., ///
|
||
|
label("Save gph:") ///
|
||
|
onclickon(main.fi_gph_save.enable) ///
|
||
|
onclickoff(main.fi_gph_save.disable)
|
||
|
FILE fi_gph_save 110 210 230 ., ///
|
||
|
save ///
|
||
|
label("File Name") ///
|
||
|
error("Saving File Name") ///
|
||
|
dialogtitle("Saving file") ///
|
||
|
filter("Stata Graphs|*.gph") ///
|
||
|
option("saving")
|
||
|
END
|
||
|
|
||
|
INCLUDE ifin
|
||
|
|
||
|
PROGRAM main_cb_graph_on
|
||
|
BEGIN
|
||
|
call main.cb_id.enable
|
||
|
if main.cb_id {
|
||
|
call main.vn_id.enable
|
||
|
}
|
||
|
END
|
||
|
|
||
|
PROGRAM main_cb_graph_off
|
||
|
BEGIN
|
||
|
if !main.cb_print {
|
||
|
call main.cb_id.disable
|
||
|
call main.vn_id.disable
|
||
|
}
|
||
|
END
|
||
|
|
||
|
PROGRAM main_cb_print_on
|
||
|
BEGIN
|
||
|
call main.cb_id.enable
|
||
|
if main.cb_id {
|
||
|
call main.vn_id.enable
|
||
|
}
|
||
|
END
|
||
|
|
||
|
PROGRAM main_cb_print_off
|
||
|
BEGIN
|
||
|
if !main.cb_graph {
|
||
|
call main.cb_id.disable
|
||
|
call main.vn_id.disable
|
||
|
}
|
||
|
END
|
||
|
|
||
|
SCRIPT main_se_on
|
||
|
BEGIN
|
||
|
main.tx_se.show
|
||
|
main.vl_se.show
|
||
|
main.tx_se.enable
|
||
|
main.vl_se.enable
|
||
|
|
||
|
main.tx_var.disable
|
||
|
main.vl_var.disable
|
||
|
main.tx_var.hide
|
||
|
main.vl_var.hide
|
||
|
|
||
|
main.tx_ci.disable
|
||
|
main.vl_ci.disable
|
||
|
main.tx_ci.hide
|
||
|
main.vl_ci.hide
|
||
|
END
|
||
|
|
||
|
SCRIPT main_var_on
|
||
|
BEGIN
|
||
|
main.tx_var.show
|
||
|
main.vl_var.show
|
||
|
main.tx_var.enable
|
||
|
main.vl_var.enable
|
||
|
|
||
|
main.tx_se.disable
|
||
|
main.vl_se.disable
|
||
|
main.tx_se.hide
|
||
|
main.vl_se.hide
|
||
|
|
||
|
main.tx_ci.disable
|
||
|
main.vl_ci.disable
|
||
|
main.tx_ci.hide
|
||
|
main.vl_ci.hide
|
||
|
END
|
||
|
|
||
|
SCRIPT main_ci_on
|
||
|
BEGIN
|
||
|
main.tx_ci.show
|
||
|
main.vl_ci.show
|
||
|
main.tx_ci.enable
|
||
|
main.vl_ci.enable
|
||
|
|
||
|
main.tx_se.disable
|
||
|
main.vl_se.disable
|
||
|
main.tx_se.hide
|
||
|
main.vl_se.hide
|
||
|
|
||
|
main.tx_var.disable
|
||
|
main.vl_var.disable
|
||
|
main.tx_var.hide
|
||
|
main.vl_var.hide
|
||
|
END
|
||
|
|
||
|
PROGRAM command
|
||
|
BEGIN
|
||
|
put "metatrim "
|
||
|
if main.r_se {
|
||
|
varlist main.vl_se
|
||
|
}
|
||
|
if main.r_var {
|
||
|
varlist main.vl_var
|
||
|
}
|
||
|
if main.r_ci {
|
||
|
varlist main.vl_ci
|
||
|
}
|
||
|
INCLUDE _ifin_pr
|
||
|
beginoptions
|
||
|
option radio(main r_se r_var r_ci)
|
||
|
option radio(main r_linear r_run r_quadratic)
|
||
|
option radio(main r_fixed r_random)
|
||
|
option main.cb_eform
|
||
|
option main.cb_flip
|
||
|
option main.cb_mixed
|
||
|
option main.cb_print
|
||
|
option main.cb_graph
|
||
|
option main.cb_funnel
|
||
|
optionarg main.vn_id
|
||
|
optionarg main.fi_fill_save
|
||
|
optionarg main.fi_gph_save
|
||
|
endoptions
|
||
|
END
|