我正在尝试在表格中的不同列之间运行相关性测试。我还使用bootstrap方法运行相同的测试。我想比较结果,但发现那些结果完全相同。所以我想知道我做错了什么。
df是一个20000行* 7列data.table,第一列是键
下面是我的引导代码。请帮我检查一下。 引导后的结果是否可能与运行整个数据集相同?谢谢!
n = nrow(df)
cor.small <- function(d,i= c(1:n)){
d2 <- d[i,]
cormat <- cor(d2[,-1,with=FALSE])
upper <- get_upper_tri(cormat)
return(upper)
}
result <- boot(data = df,statistic = cor.small, R= 999)
答案 0 :(得分:0)
您应该像这样调用boot
函数(我使用了Iris数据集来处理某些东西,并在某些地方修改了代码):
cor.small <- function(d, i ){
cormat <- cor(d[i ,-1])
upper <- cormat[lower.tri(cormat)]
return(upper)
}
df <- iris[ ,-5]
nsamp = ceil(nrow(df) / 2) # or use a different value
nrun = 10
set.seed(1)
cor.small(df,sample(1:nsamp,nsamp,replace=TRUE))
boot(data = df,statistic = cor.small, R= nrun)