我有一个scipy稀疏矩阵,想将其中的值替换为1:
from scipy import sparse
import numpy as np
data = np.array([[1, 2, 3, 0, 5], [6, 0, 0, 9, 10], [0, 0, 0, 0, 15]])
print sparse.coo_matrix(data)
我看到numpy有一个ones_like()函数,但是它并没有解决我的问题。
输出应该像这样:
(0, 0) 1
(0, 1) 1
(0, 2) 1
(0, 4) 1
(1, 0) 1
(1, 3) 1
(1, 4) 1
(2, 4) 1
coo
是从一个密集的数组构建的,那么这种重复输入
功能(我恰好喜欢它)就不是一个问题。只有当你从“原始”数据、行、列数组构建coo
时才会出现这个问题。 - hpaulj