>  기사  >  백엔드 개발  >  두 NumPy 배열의 요소별 동일성을 어떻게 비교하고 완전히 동일한지 확인합니까?

두 NumPy 배열의 요소별 동일성을 어떻게 비교하고 완전히 동일한지 확인합니까?

DDD
DDD원래의
2024-10-26 15:46:02201검색

How do you compare two NumPy arrays for element-wise equality and check if they are entirely equal?

요소별 동일성을 위해 두 개의 NumPy 배열 비교

요소별 동일성을 위해 두 개의 NumPy 배열을 비교할 때 다음을 사용하고 싶을 수 있습니다. == 연산자. 그러나 이 접근 방식은 각 해당 요소 쌍이 같음을 나타내는 부울 배열을 반환합니다. 배열이 완전히 동일한지 확인하려면 부울 배열의 모든 요소가 True인지 확인해야 합니다.

이를 달성하는 가장 간단한 방법은 (A==B).all() 표현식을 사용하는 것입니다. . 이 표현식은 부울 배열(A==B)의 모든 요소가 True인 경우 True인 단일 부울 값을 반환합니다. 이는 두 배열의 모든 요소가 동일함을 나타냅니다.

예:

<code class="python">import numpy as np

arr1 = np.array([1, 1, 1])
arr2 = np.array([1, 1, 1])

result = (arr1 == arr2).all()
print(result)  # Output: True</code>

특수 사례 및 대안:

다음 사항에 유의하는 것이 중요합니다.

  • (A==B) 사용. all()은 한 배열이 비어 있고 다른 배열에 단일 요소가 포함되어 있는 드문 경우에 True를 반환할 수 있습니다.
  • 배열의 모양이 다르고 브로드캐스팅할 수 없는 경우 이 접근 방식에서는 오류가 발생합니다.

이러한 경우 또는 보다 명시적인 접근 방식을 원하는 경우 다음 특수 함수 사용을 고려하세요.

  • np.array_equal(A, B): 배열이 동일한지 테스트합니다. 모양이며 모든 요소의 값이 동일합니다.
  • np.array_equiv(A, B): 배열이 브로드캐스트될 수 있고 동일한 값을 가질 수 있는지 테스트합니다.
  • np.allclose(A, B, ...): 배열의 모양이 동일하고 해당 요소가 지정된 허용 오차 내에서 충분히 가까운지 테스트합니다.

위 내용은 두 NumPy 배열의 요소별 동일성을 어떻게 비교하고 완전히 동일한지 확인합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.