Python 相当于 R 中的 Matrix::chol 和 Matrix::solve?

标签 python r matrix linear-algebra sparse-matrix

在 R 中,我正在执行以下操作:

L = ... # some sparse matrix L
chol_factor = Matrix::chol(L)

b = # some vector
z = Matrix::solve(chol_factor, b)

其中 solve 将通过 Cholesky 因子智能高效地计算事物。我的大部分代码都使用 scipy.sparse,但似乎没有可用的 Cholesky 分解实现,也没有有效使用该因子求解的方法。在 python 中是否有等效的方法来做到这一点?

最佳答案

这可以通过 scipy 的稀疏 LU 分解来完成。

import numpy as np
from scipy.sparse import linalg as sla

L = # some sparse matrix 
lu = sla.splu(L)

b = # some vector
z = lu.solve(b)

关于Python 相当于 R 中的 Matrix::chol 和 Matrix::solve?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24516453/

相关文章:

python - 用numpy查找矩阵中哪些行的所有元素都为零

python - Python 中的矩阵求幂

r - 使用 R 的 xts 中的端点

python - Keras:正确使用 fit_generator、predict_generator 和 evaluate_generator

r - spaCy 或语言模型 en_core_web_sm 未安装在任何 python 可执行文件中

r - 如何在 R 中使用 Lattice 绘制线段或箭头? (来自宽格式数据集)

algorithm - 有向图 : checking for cycle in adjacency matrix

matlab - 如何在矩阵中间创建一个充满钻石的钻石?

c++ - 将 C++ 中的原始字符串数据传递给 Python 程序

python - sympy modulo 不适用于非交换表达式