【问题标题】:Plotting confidence intervals from a chance experiment in R在 R 中绘制随机实验的置信区间
【发布时间】:2014-10-31 17:19:08
【问题描述】:

我正在尝试制作一个说明性的图表,以向学生展示频率主义者置信区间的含义和性质,以及对随机实验的重复试验。我从正态分布中抽样并估计置信区间。

get.ci<-function(x,alpha=.05,n){
M<-mean(x)
se<-sd(x)/sqrt(n)
t<-qt(1-alpha/2,df=n-1)
ci<-c(M-se*t,M+se*t)
return(c(M,ci))
}

n=100
mu=100
sig=20
ci<-matrix(ncol=3,nrow=1000)
for(i in 1:1000){
  x<-rnorm(n,mu,sig)
  ci[i,]<-get.ci(x,n=n)
}

现在我想在一行实验中绘制ci,其中 x 轴表示ci 的行号,y 轴表示点估计 M,上下界与一条线相连。然后我想添加一个abline 并希望在视觉上很明显,CI 的一部分(即 100*alpha%)不涵盖真实值,即

low.viol<-ci[,2]>100
up.viol<-ci[,3]<100
(sum(low.viol)+sum(up.viol))/1000

我应该如何在 R 中制作这个情节?

【问题讨论】:

    标签: r plot


    【解决方案1】:

    我认为您需要订购它们以使任何东西变得“视觉上明显”。比较:

    # unordered
    plot(range(1:nrow(ci)), range(ci), type = "n")
    segments(x0 = 1:nrow(ci), x1 = 1:nrow(ci), y0 = ci[, 2], y1 = ci[, 3], col = "gray80")
    points(1:nrow(ci), ci[, 1], pch = ".")
    
    # ordered
    ci.ordered <- ci[order(ci[, 1]), ]
    plot(range(1:nrow(ci.ordered)), range(ci.ordered), type = "n")
    segments(x0 = 1:nrow(ci.ordered), x1 = 1:nrow(ci.ordered),
             y0 = ci.ordered[, 2], y1 = ci.ordered[, 3], col = "gray80")
    points(1:nrow(ci.ordered), ci.ordered[, 1], pch = ".")
    abline(h = 100)
    

    根据重叠与否着色:

    far.off <- ci.ordered[, 2] > 100 | ci.ordered[, 3] < 100
    plot(range(1:nrow(ci.ordered)), range(ci.ordered), type = "n")
    segments(x0 = 1:nrow(ci.ordered), x1 = 1:nrow(ci.ordered),
             y0 = ci.ordered[, 2], y1 = ci.ordered[, 3],
             col = c("gray80", "firebrick2")[far.off + 1])
    points(1:nrow(ci.ordered), ci.ordered[, 1], pch = ".")
    abline(h = 100)
    

    【讨论】:

    • 非常好。谢谢!你说得对,它们需要订购。
    • 是的,这样更好。然后,对于那些不包含真实平均值的人来说,可能会使用不同的颜色来结束事情。
    • 查看更多颜色的最终版本。
    【解决方案2】:

    如果我正确理解了这个问题,在标准 R 图形中,它看起来像这样:

    plot(ci[,1], type="n", ylim=c(89,110))
    lines(ci[,2],col="red")
    lines(ci[,3],col="blue")
    abline(100,0)
    

    但是,要清楚地显示不包含 mu 的 CI 的比例,我不太确定如何帮助您

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-09-03
      • 2019-06-28
      • 2021-12-21
      • 2021-12-16
      • 1970-01-01
      • 2022-10-21
      • 1970-01-01
      • 2015-07-12
      相关资源
      最近更新 更多