r:将 matrix.csr 转换为矩阵。 as.vector(数据)中的错误

r: converting matrix.csr to matrix. Error in as.vector(data)

这是一个快速问答,因为我在这个错误上浪费了大约一个小时

我试图在 运行 PCA 之前将 sprse 矩阵转换为常规矩阵。

rawm1=read.matrix.csr(".\rjsmall1.libsvm")
str(rawm1)
sparse=rawm1$x
str(sparse)
sparseMatrix=as.matrix(sparse)

我收到以下错误

Error in as.vector(data) : no method for coercing this S4 class to a vector

答案是你需要使用库library(SparseM)。

as.matrix 

是一个标准的 r 函数,但它不转换 matrix.csr。 SparseM 中的函数可以。