擅长:python、mysql、java
<p><code>coo_matrix</code>类不支持索引。您必须将其转换为不同的稀疏格式。在</p>
<p>下面是一个带有小<code>coo_matrix</code>的示例:</p>
<pre><code>In [19]: import numpy as np
In [20]: from scipy.sparse import coo_matrix
In [21]: m = coo_matrix([[0, 0, 0, 1], [2, 0, 0 ,0], [0, 0, 0, 0], [0, 3, 4, 0]])
</code></pre>
<p>尝试索引<code>m</code>失败:</p>
^{pr2}$
<p>如果将<code>m</code>转换为CSR矩阵,则可以使用<code>idx</code>对其进行索引:</p>
<pre><code>In [25]: m.tocsr()[idx]
Out[25]:
<2x4 sparse matrix of type '<class 'numpy.int64'>'
with 2 stored elements in Compressed Sparse Row format>
</code></pre>
<p>如果要进行更多索引,最好将新数组保存在变量中,并根据需要使用它:</p>
<pre><code>In [26]: a = m.tocsr()
In [27]: a[idx]
Out[27]:
<2x4 sparse matrix of type '<class 'numpy.int64'>'
with 2 stored elements in Compressed Sparse Row format>
In [28]: a[0,0]
Out[28]: 0
</code></pre>