논리 연산 (주로 요소 별 OR)을 수행하는 데 필요한 부울 값으로 채워진 스파 스 행렬 집합이 있습니다. NumPy와 같이 scipy.sparse 행렬의 부울 연산
는 DTYPE = 'BOOL'와 행렬들을 합산하여 준다 소자 현명하지만 심한 부작용있어, OR :>>> from scipy import sparse
>>> [a,b] = [sparse.rand(5,5,density=0.1,format='lil').astype('bool')
... for x in range(2)]
>>> b
<5x5 sparse matrix of type '<class 'numpy.bool_'>'
with 2 stored elements in LInked List format>
>>> a+b
<5x5 sparse matrix of type '<class 'numpy.int8'>'
with 4 stored elements in Compressed Sparse Row format>
데이터 타입이 'INT8'로 변경 얻는다 원인 미래의 운영을위한 문제. 이 말에 의해 주위에받은 수 :
(a+b).astype('bool')
하지만이 모든 유형의 변화가 성능 저하를 야기 인상을 얻을.
결과의 dtype이 피연산자와 다른 이유는 무엇입니까?
파이썬에서 희소 행렬에 대한 논리 연산을 수행하는 더 좋은 방법이 있습니까?