是否有用于在R中找到反成像相关矩阵的功能?我可以通过excel找到它,但是在R中找不到。我尝试搜索它,但找不到任何东西。
您是否正在尝试计算Kaiser-Meyer-Olkin(KMO)指数?软件包KMO
中有psych
功能。如果仅通过键入psych::KMO
来查看源代码,则可以看到该函数实际上是在计算反成像相关矩阵:
psych::KMO
function (r)
{
cl <- match.call()
if (!isCorrelation(r))
r <- cor(r, use = "pairwise")
Q <- try(solve(r))
if (inherits(Q, as.character("try-error"))) {
message("matrix is not invertible, image not found")
Q <- r
}
S2 <- diag(1/diag(Q))
IC <- S2 %*% Q %*% S2
Q <- Image <- cov2cor(Q)
diag(Q) <- 0
diag(r) <- 0
sumQ2 <- sum(Q^2)
sumr2 <- sum(r^2)
MSA <- sumr2/(sumr2 + sumQ2)
MSAi <- colSums(r^2)/(colSums(r^2) + colSums(Q^2))
results <- list(MSA = MSA, MSAi = MSAi, Image = Image, ImCov = IC,
Call = cl)
class(results) <- c("psych", "KMO")
return(results)
}
您将看到它已分配给变量IC
。
您可以按原样使用该功能来计算KMO索引,也可以复制代码以计算IC
。