如何重复每次运行生成不同输出的循环?

时间:2014-10-13 06:56:33

标签: r loops for-loop statistics

pvals=c()
for (i in 1:ncol(my_geno)){
my_pheno=sample(my_pheno,replace=F)
pvals[i]= anova(lm(my_pheno~my_geno[,i]))[1,5]
print(i)
}
which.min(pvals)

大家好。我会继续尝试描述我的代码,并提前抱歉我没有在此代码中编写通用变量。上面的循环根据my_geno对my_geno的回归生成pvalues,我想要做的是找到一种方法来使它成为整个循环来自< 1:ncol(mygeno)>重复设定次数,然后将每次运行使用的最小pvals输出到矢量中。我相信< [1,5]>选择由anova创建的表中的pvalues。

提前谢谢!

1 个答案:

答案 0 :(得分:1)

可以对for循环进行一些优化,但这应该适用于现在。此代码将重复100次。

result <- replicate(100, {
  pvals=c()
  for (i in 1:ncol(my_geno)){
    my_pheno=sample(my_pheno,replace=F)
    pvals[i]= anova(lm(my_pheno~my_geno[,i]))[1,5]
    print(i)
  }
  which.min(pvals)
})