R 如何编写自己的函数来创建引导示例
我想写一个函数,它为任何向量(x)提供一个引导置信区间,该向量将运行循环(n)次。我想使用我拥有的样本数据(cvdonly$cbmi)来估计患有心血管疾病的人的平均体重指数 这是我所拥有的,但它不起作用,因为它所生成的CI与我的样本数据集的平均值相差甚远:R 如何编写自己的函数来创建引导示例,r,function,loops,R,Function,Loops,我想写一个函数,它为任何向量(x)提供一个引导置信区间,该向量将运行循环(n)次。我想使用我拥有的样本数据(cvdonly$cbmi)来估计患有心血管疾病的人的平均体重指数 这是我所拥有的,但它不起作用,因为它所生成的CI与我的样本数据集的平均值相差甚远: bs<-function(x,n){ m_vec<-rep(NaN, n) for (i in 1:n){ cbminorm<-rnorm(x) m_vec[i]<-mean(cbminorm)
bs<-function(x,n){
m_vec<-rep(NaN, n)
for (i in 1:n){
cbminorm<-rnorm(x)
m_vec[i]<-mean(cbminorm)
}
ll<-round(quantile(m_vec, 0.025, na.rm = TRUE),2)
ul<-round(quantile(m_vec, 0.975, na.rm = TRUE),2)
paste("95% bootstrap inverval for the mean:", ll, "to", ul)
}
bs(cvdonly$cbmi, 100)
b您可能需要将rnorm(x)
更改为sample(x,replace=TRUE)
。值得一看的是boot
软件包,它提供了一系列计算时间间隔的方法,这些方法可以表现得更好!这是需要修复的,谢谢!您可能希望将rnorm(x)
更改为sample(x,replace=TRUE)
。值得一看的是boot
软件包,它提供了一系列计算时间间隔的方法,这些方法可以表现得更好!这是需要修复的,谢谢!