使用for循环模拟t检验p值
对于这个项目,我需要使用R脚本来模拟t测试的有效性。我必须使用for循环来执行以下2000次: 这个循环看起来像这样吗使用for循环模拟t检验p值,r,loops,statistics,R,Loops,Statistics,对于这个项目,我需要使用R脚本来模拟t测试的有效性。我必须使用for循环来执行以下2000次: 这个循环看起来像这样吗 i <- 1 for (i <= 2001) { x <-rf(5,df1=5,df2=10) b <- df2 p.value <-t.test(x,mu=(b/(b-2))$p.value i <- i+1 } i按照您编写的方式,它将是一个“while”循环 For R中的循环具有以下语法: for
i <- 1
for (i <= 2001) {
x <-rf(5,df1=5,df2=10)
b <- df2
p.value <-t.test(x,mu=(b/(b-2))$p.value
i <- i+1
}
i按照您编写的方式,它将是一个“while”循环
For R中的循环具有以下语法:
for (i in 1:2000) {
df1 <- 5
df2 <- 10
x <-rf(5, df1=df1, df2=df2)
b <- df2
p.value <- t.test(x, mu=(b/(b-2)))$p.value
}
for(1:2000中的i){
按您编写它的方式,它将是一个“while”循环
For R中的循环具有以下语法:
for (i in 1:2000) {
df1 <- 5
df2 <- 10
x <-rf(5, df1=df1, df2=df2)
b <- df2
p.value <- t.test(x, mu=(b/(b-2)))$p.value
}
for(1:2000中的i){
df1在您的第一个解决方案中,您可以将赋值从循环中去掉。不需要对相同的值进行2000次赋值。因此,可以像df1和for
版本那样进行赋值(在我的修改中也是如此)结果无法保存。因此,循环后,您只保留一个值。因此,您的复制解决方案要好得多。+1对于这一点,您是对的,Marek,分配给df1、df2、b(为什么首先是b?)应该在循环之外。甚至mu都可以预先计算。为了保存p.值,最糟糕的是用p.值来增长向量。好的,我对这个calimo有点困惑(再次感谢您的帮助)我选择了b,因为我分配了Med@Simon来更改df2的输入,并将其作为函数参数包含在内。我编辑了我的答案以将其包含在内。在您的第一个解决方案中,您可以将分配从循环中删除。无需分配2000次相同的值。因此,它可以像DF1一样进行,也可以针对for
版本(在我的修改中)结果无法保存。因此,循环后,您只保留一个值。因此,您的复制解决方案要好得多。+1对于这一点,您是对的,Marek,分配给df1、df2、b(为什么首先是b?)应该在循环之外。甚至mu都可以预先计算。为了保存p.值,最糟糕的是用p.值来增长向量。好的,我对这个calimo有点困惑(再次感谢您的帮助)当我指派Med@Simon更改df2的输入时,我选择了b,将其作为函数参数。我编辑了我的答案,将其包括在内。这是一个明显的家庭作业问题。@Colin是的,但就他们而言,这不是一个坏问题。好吧,即使这是家庭作业,至少他尝试了这么做,并包含了一段代码…+1trying@nico如果你仔细看,你会发现你可以看到他没有在帮助页面上查看(语义错误)他不执行这段代码。所以-1表示假装做了什么。他使用StackOverflow作为R代码解释器。有人应该回答Error:unexpected'这是一个明显的家庭作业问题。@Colin是的,但就他们而言,这不是一个坏问题。好吧,即使这是家庭作业,至少他试着去做,并包含了一段代码…+1表示trying@nico如果你仔细看,你会发现他没有在帮助页面上查看(语义错误),也没有执行此代码。所以-1表示假装做了什么。他使用StackOverflow作为R代码解释器。应该有人回答错误:意外'