如何最好地以图形方式显示II型(beta)误差,功效和样本量?


16

我被要求写一篇关于统计学的入门书,我在努力用图形显示p值和幂之间的关系。我想出了这张图:

两条高斯曲线相互作用

我的问题:有更好的显示方式吗?

这是我的R代码

x <- seq(-4, 4, length=1000)
hx <- dnorm(x, mean=0, sd=1)

plot(x, hx, type="n", xlim=c(-4, 8), ylim=c(0, 0.5), 
ylab = "",
xlab = "",
main= expression(paste("Type II (", beta, ") error")), axes=FALSE)
axis(1, at = c(-qnorm(.025), 0, -4), 
     labels = expression("p-value", 0, -infinity ))

shift = qnorm(1-0.025, mean=0, sd=1)*1.7
xfit2 <- x + shift
yfit2 <- dnorm(xfit2, mean=shift, sd=1)

# Print null hypothesis area
col_null = "#DDDDDD"
polygon(c(min(x), x,max(x)), c(0,hx,0), col=col_null)
lines(x, hx, lwd=2)

# The alternative hypothesis area

## The red - underpowered area
lb <- min(xfit2)
ub <- round(qnorm(.975),2)
col1 = "#CC2222"

i <- xfit2 >= lb & xfit2 <= ub
polygon(c(lb,xfit2[i],ub), c(0,yfit2[i],0), col=col1)

## The green area where the power is
col2 = "#22CC22"
i <- xfit2 >= ub
polygon(c(ub,xfit2[i],max(xfit2)), c(0,yfit2[i],0), col=col2)

# Outline the alternative hypothesis
lines(xfit2, yfit2, lwd=2)

axis(1, at = (c(ub, max(xfit2))), labels=c("", expression(infinity)), 
    col=col2, lwd=1, lwd.tick=FALSE)


legend("topright", inset=.05, title="Color",
   c("Null hypoteses","Type II error", "True"), fill=c(col_null, col1, col2), horiz=FALSE)

abline(v=ub, lwd=2, col="#000088", lty="dashed")

arrows(ub, 0.45, ub+1, 0.45, lwd=3, col="#008800")
arrows(ub, 0.45, ub-1, 0.45, lwd=3, col="#880000")

更新资料


感谢您的出色回答。我更改了一些代码:

# Print null hypothesis area
col_null = "#AAAAAA"
polygon(c(min(x), x,max(x)), c(0,hx,0), col=col_null, lwd=2, density=c(10, 40), angle=-45, border=0)
lines(x, hx, lwd=2, lty="dashed", col=col_null)

...
legend("topright", inset=.015, title="Color",
   c("Null hypoteses","Type II error", "True"), fill=c(col_null, col1, col2), 
       angle=-45,
       density=c(20, 1000, 1000), horiz=FALSE)

我喜欢零假设的虚假图片,因为它表明它并不存在。我已经考虑过透明度并添加Alfa,但是我担心将太多信息合并到一张图片中,因此选择不这样做。

在此处输入图片说明

印刷品的局限性使我无法让读者尝试。我选择@Greg Snow的“ TeachingDemos”作为我的答案,因为我喜欢两个错误不重叠的想法。


4
您可以使用伪透明性来稍微增强图形。像这样的答案
caracal

@caracal(+1)我应该为显示力量的区域添加一个虚线图案(像您一样)。
chl

很好,我在其他地方也看到过类似的情节。但这并未显示多个p值的实际值以及这些p值的功效​​。您可以计算不同p值和样本大小的功效,然后在一张图表上放几条线
Peter Flom-恢复莫妮卡

1
也许检查一下G * Power 3软件生成的图的类型对于确定图的想法很有帮助。尽管从内存来看,它们似乎与chl和caracal已经提出的内容非常相似(并且不会帮助您在R中做到这一点)。
Andy W

@Andy G *灵感来自力量的力量与效果大小图或力量与Alpha曲线确实是不错的选择。对于第一种情况,可以从这个答案开始,它应该很容易适应第二种情况。
caracal

Answers:


9

我玩过类似的图,发现当两条曲线不互相阻塞但垂直偏移(但仍在同一x轴上)时,效果更好。这清楚地表明,其中一条曲线代表零假设,另一条曲线代表替代假设下的均值给定值。power.examp用于R的TeachingDemos软件包中的函数将创建这些图,并且该run.power.examp函数(相同的软件包)使您可以交互地更改参数并更新图。


+1,比我的更为完整。(实际上,我知道TeachingDemos程序包中有东西,但太懒了以至于无法搜索。)
chl

14

一些想法:(a)使用透明性,并且(b)允许一些交互性。

这是我的观点,主要是受Java小程序对I型和II型错误的影响-司法系统中的错误。因为这是相当纯粹的绘图代码,所以我将其粘贴为要点#1139310

外观如下:

在此处输入图片说明

它依赖于aplpack软件包(滑块和按钮)。因此,基本上,您可以改变与H0(固定为0)和根据替代项分配的位置。请注意,没有考虑样本量。


那真是太棒了,我之前从未见过aplpack。
肯·威廉姆斯

1
@肯谢谢。该aplpack软件包还提供了一些很好的数据附加组件。但是,也依赖于tcl / tk 的rpanel可能是更复杂内容的更好选择。现在,借助RStudio和操纵程序包,还可以轻松增强R中的基本情节
。– chl

8

G Power 3是Mac和Windows上可用的免费软件,具有一些非常不错的图形分析功能,可用于功耗分析。主图与您的图和@chl所示的图基本一致。它使用一条简单的直线来表示零假设和备用假设检验统计量分布,并且以beta和alpha分别显示不同的颜色。

G Power 3的一个不错的功能是它支持大量常见的功率分析场景,并且GUI使得学生和应用研究人员可以轻松地进行探索。

这是一张幻灯片的屏幕截图(摘自我在描述性统计数据中演示文稿中的功耗分析部分),左侧显示了多个此类图形。如果选择单尾t检验版本,则它看起来更像您的示例。

g次幂3个图表

也可以生成图表来显示与统计功效和假设检验相关的因素(例如,α,效应量,样本量,功效等)之间的功能关系。我在这里给出了一些这样的图的例子。这是一个这样的图的例子:

在此处输入图片说明


有趣的程序包,我将在以后进行研究。尽管对于该领域的新手来说,这些图看起来有些复杂。我的听众是医学博士,没有任何数学或统计学背景知识。谢谢!
Max Gordon
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.