use*_*669 5 python scipy sparse-matrix
我从事处理大型网络的程序,因此我必须使用稀疏矩阵(最好scipy.sparse.csr).现在我想编写一个函数,它接受两个稀疏布尔矩阵A和B,并返回B而没有在A中设置的那些条目.这是一个伪代码示例.
def f(A, B):
return B and (not A)
Run Code Online (Sandbox Code Playgroud)
如何用scipy.sparse矩阵完成这个?
这是实现您的功能的一种方法:
def f(a, b):
return b - b.multiply(a)
Run Code Online (Sandbox Code Playgroud)
b.multiply(a)实际上是一种逐元素and操作。
这是一个例子。a和b是稀疏矩阵:
In [134]: b.A
Out[134]: array([[False, False, True, True]], dtype=bool)
In [135]: a.A
Out[135]: array([[False, True, False, True]], dtype=bool)
In [136]: f(a,b).A
Out[136]: array([[False, False, True, False]], dtype=bool)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1447 次 |
| 最近记录: |