Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 计算稀疏矩阵的零空间_R_Sparse Matrix - Fatal编程技术网

R 计算稀疏矩阵的零空间

R 计算稀疏矩阵的零空间,r,sparse-matrix,R,Sparse Matrix,我找到了一个函数(null或nullspace)来查找R中正则矩阵的null空间,但找不到任何稀疏矩阵(sparseMatrix)的函数或包 有人知道怎么做吗?如果你看一下ggm::null的代码,你会发现它是基于输入矩阵的QR分解 另一方面,Matrix包提供了自己的方法来计算稀疏矩阵的QR分解 例如: require(Matrix) A <- matrix(rep(0:1, 3), 3, 2) As <- Matrix(A, sparse = TRUE) qr.Q(qr(A),

我找到了一个函数(null或nullspace)来查找R中正则矩阵的null空间,但找不到任何稀疏矩阵(sparseMatrix)的函数或包


有人知道怎么做吗?

如果你看一下ggm::null的代码,你会发现它是基于输入矩阵的QR分解

另一方面,
Matrix
包提供了自己的方法来计算稀疏矩阵的
QR
分解

例如:

require(Matrix)
A <- matrix(rep(0:1, 3), 3, 2)
As <- Matrix(A, sparse = TRUE)

qr.Q(qr(A), complete=TRUE)[, 2:3]
qr.Q(qr(As), complete=TRUE)[, 2:3]
require(矩阵)

A你好,文森特。我用了你的评论,很好。虽然矩阵及其转置被分解,但在稀疏情况下,当行数小于列数时,它不会分解。例如:qr.Q(qr(As),complete=TRUE)和>qr.Q(qr(t(A)),complete=TRUE)正在工作,但>qr.Q(qr(t(As)),complete=TRUE在.local(x,…)中没有工作错误:A必须具有#{rows}>=#{columns}。谢谢。我收到了相同的错误消息。我不知道为什么它对密集矩阵有效,但对稀疏矩阵无效…非常感谢您的关注。