R:绘制样本大小与功效的关系图
R: Plotting sample size against power
您好,我正在尝试在 R 中绘制样本大小与功效的关系图。
我认为它需要一个 for 循环,但不知道如何正确实现它。任何帮助将不胜感激,谢谢。
for (i in c(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1)){
graph<-power.prop.test(p1=0.4,p2=0.24,power=c(0.1:1),sig.level=0.05)}
plot(graph$n,graph$power,type="b",xlab="sample size",ylab="power")
R 中的 power.t.test
和 power.prop.test
函数不能很好地处理矢量化参数,因此您需要按照您的建议将调用包装在类似循环的结构中。
下面我使用sapply
函数进行迭代并提取样本量,然后用于绘图。
powrange <- seq(0.4, .9, .1)
n <- sapply(powrange, function(i) power.prop.test(p1=0.4,p2=0.24,power=i,sig.level=0.05)$n)
plot(n, powrange, type="b",xlab="sample size",ylab="power")
如果您不提取 n
,那么您最终会得到一个输出结果列表,您需要迭代输出以从中获得 n
。
您好,我正在尝试在 R 中绘制样本大小与功效的关系图。 我认为它需要一个 for 循环,但不知道如何正确实现它。任何帮助将不胜感激,谢谢。
for (i in c(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1)){
graph<-power.prop.test(p1=0.4,p2=0.24,power=c(0.1:1),sig.level=0.05)}
plot(graph$n,graph$power,type="b",xlab="sample size",ylab="power")
R 中的 power.t.test
和 power.prop.test
函数不能很好地处理矢量化参数,因此您需要按照您的建议将调用包装在类似循环的结构中。
下面我使用sapply
函数进行迭代并提取样本量,然后用于绘图。
powrange <- seq(0.4, .9, .1)
n <- sapply(powrange, function(i) power.prop.test(p1=0.4,p2=0.24,power=i,sig.level=0.05)$n)
plot(n, powrange, type="b",xlab="sample size",ylab="power")
如果您不提取 n
,那么您最终会得到一个输出结果列表,您需要迭代输出以从中获得 n
。