1
두 개의 10x2x2 complex64 배열이 있습니다.동일한 모양의 2 개의 복잡한 다차원 배열에서의 상태 확인
numpy.sqrt(a[empty_one_or_both])
이 있습니까 : 목표는 같은 단지 비어 쌍에 다른 작업을 수행하는 것입니다
import numpy
a = numpy.zeros((10,2,2), "complex64")
b = numpy.ones((10,2,2), "complex64")
empty_one_or_both = (a.reshape(10,4) != 0).all(axis=1) * (b.reshape(10,4) != 0).all(axis=1) # EDIT
: 나는없는 한쪽 또는 양쪽에 모두 0 × 2 배열의 어느 찾으려면 더 나은 방법?
'*'를 사용하면 두 행렬 0 만 일치시킵니다. 나는 네가 '~'하고 싶어한다고 생각해. –
편집을 참조하십시오. 역의 문제를 찾고, 둘 모두에서 모두 0이 아니며, 사용 가능한 마스크를 가지고 있는지 확인하십시오. – Benjamin
그런 경우, 필자는'*'보다'&'또는'numpy.logical_and()'를 선호합니다. 그 결과는 물론 동일하지만, 표현하고자하는 것이 논리적 AND 일 때 부울 값을 곱하는 것은 조금 이상합니다. (이 외에도, 당신이이 접근법에 대해 개선하고 싶은 것이 무엇인지 생각할 수 없습니다. 그것은 직접적이고 효율적이어서 당신을 괴롭히는 것이 아닙니까?) –