我试图直观地说明一个基本的双尾假设检验。我有学生使用ttest来找到一个p值。我希望能够绘制一个标准正态分布,并对大于t统计量的区域进行阴影处理。我已经使用以下方法生成了一条标准法线:
#delimit ;
graph twoway (function y=normalden(x,0,1), range(-4 4) lw(medthick)),
title("Standard Normal-Distribution (Null)")
xtitle("Normal", size(medlarge)) ytitle("")
xlabel(-4(1)4)
xscale(lw(medthick)) yscale(lw(medthick))
legend(off)
graphregion(fcolor(white));
#delimit cr哪一项会产生

但是,我想知道如何在ttest之后填充p值的区域。理想情况下,我希望这个示例通常适用于任何双边测试。我正在尝试获取类似如下的内容:

我是通过在画图上填写基本区域得到这个的,但我正在尝试获得更自动化和更精确的东西。
发布于 2020-09-25 02:18:41
感谢Nick Cox指出,此示例位于手动输入twoway function中。
下面是我所需要的:
ttest highestPrev, by(match) // can be switched out for any ttest of interest
local positive_tstat = abs(r(t))
local negative_tstat = -1*abs(r(t))
#delimit ;
twoway
function y=normalden(x), range(-4 `negative_tstat') color(gs12) recast(area)
|| function y=normalden(x), range(`positive_tstat' 4) color(gs12) recast(area)
|| function y=normalden(x), range(-4 4) lstyle(foreground)
||,
plotregion(style(none))
ysca(off) xsca(noline)
legend(off)
xlabel(-4 "-4 sd" -3 "-3 sd" -2 "-2 sd" -1 "-1 sd" 0 "0"
1 "1 sd" 2 "2 sd" 3 "3 sd" 4 "4 sd"
, grid gmin gmax)
xtitle(" " "Standard Normal Distribution (Null)")
;
#delimit cr

https://stackoverflow.com/questions/64051191
复制相似问题