Stata——t检验的输出结果
Stata -- output results of ttest
我有 group_id
的数据(1、2、3 等等)。我必须 运行 通过 group_id
进行测试。下面我提供了我认为我将用于每个 group_id
的代码。我如何修改它以便我可以遍历 group_ids
并获得包含所有 t 检验的输出?将不胜感激任何帮助。谢谢。
ttest return, by(test_indicator) unequal
by
前缀可以对每个group_id
重复t检验,但很难与其他代码结合。这是一个使用 levelsof
和 foreach
循环遍历每个 id、运行 ttest 和 post
结果到临时数据集的快速示例。然后将新数据集加载并导出到 .xls 文件中。
sysuse auto,clear
recode rep78 (1/3=1)(4/5=2),gen(id) // artificial group id
drop if missing(id) // ensure all casea have ids
tempname ttestparm
tempfile outfile
postfile `ttestparm' obs n1 n2 mu1 mu2 sd1 sd2 diff_b diff_se diff_p using `outfile',replace
levelsof id,local(idvals)
foreach i of local idvals {
ttest mpg if id==`i', by(foreign)
post `ttestparm' (`i') (`r(N_1)') (`r(N_2)') (`r(mu_1)') (`r(mu_2)') (`r(sd_1)') (`r(sd_2)') (`r(mu_1)'-`r(mu_2)') (`r(se)') (`r(p)')
}
postclose `ttestparm'
preserve
use `outfile',clear
export excel using "ttestout.xls", firstrow(variables) replace
restore
请注意,preserve
/restore
组合仅在对原始数据进行更多工作时才有用。
我有 group_id
的数据(1、2、3 等等)。我必须 运行 通过 group_id
进行测试。下面我提供了我认为我将用于每个 group_id
的代码。我如何修改它以便我可以遍历 group_ids
并获得包含所有 t 检验的输出?将不胜感激任何帮助。谢谢。
ttest return, by(test_indicator) unequal
by
前缀可以对每个group_id
重复t检验,但很难与其他代码结合。这是一个使用 levelsof
和 foreach
循环遍历每个 id、运行 ttest 和 post
结果到临时数据集的快速示例。然后将新数据集加载并导出到 .xls 文件中。
sysuse auto,clear
recode rep78 (1/3=1)(4/5=2),gen(id) // artificial group id
drop if missing(id) // ensure all casea have ids
tempname ttestparm
tempfile outfile
postfile `ttestparm' obs n1 n2 mu1 mu2 sd1 sd2 diff_b diff_se diff_p using `outfile',replace
levelsof id,local(idvals)
foreach i of local idvals {
ttest mpg if id==`i', by(foreign)
post `ttestparm' (`i') (`r(N_1)') (`r(N_2)') (`r(mu_1)') (`r(mu_2)') (`r(sd_1)') (`r(sd_2)') (`r(mu_1)'-`r(mu_2)') (`r(se)') (`r(p)')
}
postclose `ttestparm'
preserve
use `outfile',clear
export excel using "ttestout.xls", firstrow(variables) replace
restore
请注意,preserve
/restore
组合仅在对原始数据进行更多工作时才有用。