r-设置exact=True时findCorrelation()的详细信息(插入符号包)

r-设置exact=True时findCorrelation()的详细信息(插入符号包),r,r-caret,R,R Caret,根据示例,我运行官方示例,如下所示: 代码: 库(插入符号) R1首先,它确定每个变量的平均绝对相关性。列x1和x5具有最高的平均值(平均值(c(0.85,0.56,0.32,0.86))和平均值(c(0.85,0.9,0.36,0.32)),因此它看起来要在第一步删除其中一个。它发现x1是最具全球攻击性的,因此将其删除 然后,它使用相同的过程重新计算并比较x5和x3 它在删除三列后停止,因为所有成对相关性都低于阈值 首先,它确定每个变量的平均绝对相关性。列x1和x5具有最高的平均值(平均值(c

根据示例,我运行官方示例,如下所示:

代码:

库(插入符号)

R1首先,它确定每个变量的平均绝对相关性。列
x1
x5
具有最高的平均值(
平均值(c(0.85,0.56,0.32,0.86))
平均值(c(0.85,0.9,0.36,0.32))
,因此它看起来要在第一步删除其中一个。它发现
x1
是最具全球攻击性的,因此将其删除

然后,它使用相同的过程重新计算并比较
x5
x3


它在删除三列后停止,因为所有成对相关性都低于阈值

首先,它确定每个变量的平均绝对相关性。列
x1
x5
具有最高的平均值(
平均值(c(0.85,0.56,0.32,0.86))
平均值(c(0.85,0.9,0.36,0.32))
,因此它看起来要在第一步删除其中一个。它发现
x1
是最具全球攻击性的,因此将其删除

然后,它使用相同的过程重新计算并比较
x5
x3


它在删除三列后停止,因为所有成对相关性都低于阈值

嗨,Max,我想混淆的是输出显示了0.648对0.545的第一次比较,然而,平均值(c(0.85,0.9,0.36,0.32))不是0.545。0.545是源代码的平均值(x2[-j,],na.rm=TRUE)。平均值(c(0.85,0.9,0.36,0.32))等于0.6075,这将是平均值(x2[j,],na.rm=TRUE)。你能检查一下这是否是一个bug吗?嗨,Max,我想混淆的是输出显示了0.648和0.545的第一次比较,但是平均值(c(0.85,0.9,0.36,0.32))不是0.545。0.545是源代码的平均值(x2[-j,],na.rm=TRUE)。平均值(c(0.85,0.9,0.36,0.32))等于0.6075,这将是平均值(x2[j,],na.rm=TRUE)。你能检查一下这是否是一个错误吗?
library(caret)

R1 <- structure(c(1, 0.86, 0.56, 0.32, 0.85, 0.86, 1, 0.01, 0.74, 0.32, 
                  0.56, 0.01, 1, 0.65, 0.91, 0.32, 0.74, 0.65, 1, 0.36,
                  0.85, 0.32, 0.91, 0.36, 1), 
                .Dim = c(5L, 5L))


colnames(R1) <- rownames(R1) <- paste0("x", 1:ncol(R1))

findCorrelation(R1, cutoff = .6, exact = TRUE, names = TRUE
                ,verbose = TRUE)
> findCorrelation(R1, cutoff = .6, exact = TRUE, names = TRUE, verbose = TRUE)
## Compare row 1  and column  5 with corr  0.85 
##   Means:  0.648 vs 0.545 so flagging column 1 
## Compare row 5  and column  3 with corr  0.91 
##   Means:  0.53 vs 0.49 so flagging column 5 
## Compare row 3  and column  4 with corr  0.65 
##   Means:  0.33 vs 0.352 so flagging column 4 
## All correlations <= 0.6 
## [1] "x1" "x5" "x4"