与 R 中超过 2 个变量的自举相关

Bootstrapped correlation with more than 2 variables in R

我正在尝试计算 R 中六个变量之间的 bootstraped 相关性。但是我找到的所有示例、解决方案和教程都是针对两个变量的。我适应了,但我不确定我是否得到了正确的输出。

假设这是我的数据:

dado <- tibble(var1 = rnorm(104, mean = 7, sd = 1.5), var2 = rnorm(104, mean = 2.88, sd = 1.12),
               var3 = rnorm(104, mean = 1.55, sd = 0.8), var4 = rnorm(104, mean = 3.52, sd = 1.2),
               var5 = rnorm(104, mean = 2.67, sd = 0.94), var6 = rnorm(104, mean = 2.33, sd = 1.45))

我尝试使用下面的代码来bootstrap,但是输出不清晰。

foo.matriz <- function(data, indices, cor.type = "pearson"){
        dt<-data[indices,]
        cor(dt, method = cor.type)
}

boot_strap <- boot(data = dado, statistic = foo.matriz, R = 1000)

我是否应该将其解释为:第一行等于第一个变量与其自身的相关性;第二行是第一个变量与第二个变量的相关性;等等?当数字1再次出现时,循环又从第二个变量开始?

答案是肯定的。但它可能并不重要。如果你在 6x6 相关矩阵中按行或按列,你最终会得到相同的结果,因为上下三角形是对称的。

如果您不确定矩阵如何重塑为向量,请考虑以下问题:


m <- matrix( 1:36, nrow=6 )
print(m)

as.numeric( m )
## 1 2 3 4 5 6 7 etc... indicating that the default order is by column from left to right.

尽管我无法轻松地对您的方法的可靠性发表评论,但结果正如您所怀疑的那样。