gpt4 book ai didi

python - 对 csr 格式的 scipy 稀疏矩阵中的行的操作

转载 作者:太空狗 更新时间:2023-10-30 01:51:56 25 4
gpt4 key购买 nike

我想将 csr 矩阵的单行与标量相乘。在 numpy 中我会做

matrix[indices,:] = x * matrix[indices,:]

对于 csr,这会在 scipy 中引发异常。

有没有办法用 csr 矩阵类似地做到这一点?

最佳答案

不,没有办法直接做到这一点,因为虽然您可以计算 row * x,但您不能分配给 CSR 矩阵中的一行。您可以转换为 DOK 格式并返回,或者直接处理 CSR 矩阵的内部结构。 CSR 矩阵 X 的第 i 行是切片

X.data[X.indptr[i] : X.indptr[i + 1]]

您可以就地更新,即

X.data[X.indptr[i] : X.indptr[i + 1]] *= factor

(这显然适用于乘法和其他保留稀疏性的操作,但不适用于加法之类的操作。)

关于python - 对 csr 格式的 scipy 稀疏矩阵中的行的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11687953/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com