큰 네트워크를 다루는 프로그램에서 작업하기 때문에 희소 행렬 (preferrably scipy.sparse.csr
)을 사용해야합니다. 이제 나는 두 개의 드문 드문 부울 행렬 A와 B를 취하여 A에 설정된 항목없이 B를 반환하는 함수를 작성하려고합니다. 여기에는 의사 코드 예제가 있습니다.두 개의 scipy.sparse 행렬을 파이썬으로 비교하기
def f(A, B):
return B and (not A)
어떻게하면 scipy.sparse 행렬로이 작업을 수행 할 수 있습니까?
def f(a, b):
return b - b.multiply(a)
b.multiply(a)
효과적으로 요소 현명한 and
작업입니다 :
이 의사는 NumPy와 부울 행렬과 함께 작동하지 않을 것입니다. 다음은 정상적인 행렬과 함께 작동합니다 :'return B & ~ A'. –
두 경우 모두 효과가 있더라도 결과가 희박하지 않기 때문에 'not A'또는 '~ A'를하고 싶지 않을 것입니다. –