我正在尝试使用 R 包分解方阵,irlba
但收到以下消息:
“V[, 1:(k + dim(F)[2])] <- cbind(V[, 1:(dim(Bsvd$v)[1]) 中的错误,drop = FALSE] %*% : number要替换的项目数不是替换长度的倍数"
然而,用svd
or分解矩阵。eigen
我在其他地方发现这篇文章暗示了同样的问题(没有回应)。
我将感谢任何可以帮助我解决这个问题的人!
代码:
library(irlba)
C.i <- structure(c(0.107821513562202, 0.0629415996952743, -0.0346069282137902,
-0.0410208578535759, 0.0629415996952743, 0.136205395050303, -0.00378166611862939,
0.00237156895349009, -0.0346069282137902, -0.00378166611862939,
0.0122114763151942, -0.00635448918784993, -0.0410208578535759,
0.00237156895349009, -0.00635448918784993, 0.0431193044924), .Dim = c(4L, 4L),
.Dimnames = list(c("Sepal.Length", "Sepal.Width", "Petal.Length",
"Petal.Width"), c("Sepal.Length", "Sepal.Width", "Petal.Length",
"Petal.Width")))
irlba(C.i, nu=1, nv=1)
# These work
svd(C.i)
eigen(C.i)