我正在尝试绘制有关误差范围和所需样本量的图表。但是超出我的技能的事情是错误的。有谁知道我怎么解决它?
# range of margin of error
alpha=seq(0.01, 0.10, by=.01)
nalpha <- length(alpha)
# sample sizes
samps =seq(0, 15000, by=500)[-1]
nsamps <- length(samps)
# obtain sample sizes vs MoE
samsize <- array(numeric(nalpha*nsamps), dim=c(nalpha,nsamps))
for (i in 1:nsamps){
for (j in 1:nalpha){
result = sqrt( (.5*(1-.5))/samps) * qnorm(1-alpha/2)
samsize[j,i] <- result[j]
}
}
# graphing
x <- range(alpha)
y <- round(range(nsamps))
cols <- rainbow(length(samps))
plot(x, y, type="n",
ylab="Sample Size (n)",
xlab="Margin of Error" )
# add power curves
for (i in 1:nsamps){
lines(alpha, samsize[,i], type="l", lwd=2, col=cols[i])
}
答案 0 :(得分:0)
查看y
plot()
的价值
y
# [1] 30 30
但是您使用samsize
的值作为行中的y
值。
range(samsize)
# [1] 0.01163087 0.05759729
这超出了你为情节定义的范围,因此这些值永远不会出现。我不确定您打算绘制的内容,但是您需要确保y
和plot()
中使用的lines()
的值匹配才能真正看到线。