Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我在 R 中对一个名为 data 的数据框进行 SVD
svd1 <- svd(scale(data))
我使用绘制结果
plot(svd1$d^2/sum(svd1$d^2),xlab="Column",ylab="Percent of variance explained",pch=19)
我发现在图中,列号与数据框中的列号不对应(无论我使用 SVD 的列子集,第一列总是显示最高方差)。
我的问题是,如何在图中获取列名(或“真实”索引)?
根据 R 文档(.../library/base/html/svd.html):
d is a vector containing the singular values of x, of length min(n, p).
这些奇异值是通过 SVD 算法从整个输入矩阵中计算出来的,因此无法根据列名来标记奇异值。