다른 배열의 인덱스를 사용하여 2D 배열에서 요소를 추출하는 방법은 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2024-11-09 11:40:02
원래의
1034명이 탐색했습니다.

How to Extract Elements from a 2D Array Using Indices from Another Array?

NumPy 배열을 다른 배열의 2차원에 대한 인덱스로 사용

제공된 인덱스를 기반으로 2D 배열에서 특정 요소를 추출하려면 두 번째 배열에서는 NumPy의 정수 배열을 활용할 수 있습니다. indexing.

다음 예를 고려하십시오.

A = np.array([[0,1], [2,3], [4,5]])
B = np.array([[1], [0], [1]], dtype='int')
로그인 후 복사

다음과 같은 원하는 출력을 얻으려면:

C = np.array([[1], [2], [5]])
로그인 후 복사

다음 방법을 사용할 수 있습니다.

A[np.arange(A.shape[0]),B.ravel()]
로그인 후 복사

어떻게요? 작동:

  • np.arange(A.shape[0])은 A의 각 행에 대한 인덱스가 포함된 배열을 생성합니다.
  • B.ravel()은 B를 평면화합니다. 추가 차원을 제거합니다.
  • 결합된 인덱스 배열 [np.arange(A.shape[0]),B.ravel()] 추출할 A의 행 및 열 인덱스를 지정합니다.

또는 B가 1D 배열이거나 열 인덱스 목록인 경우 .ravel()을 사용하여 평면화를 건너뛸 수 있습니다.

A[np.arange(A.shape[0]),B]
로그인 후 복사

이 방법은 다른 배열에서 파생된 인덱스를 사용하여 2D 배열에서 요소를 추출하는 간단한 접근 방식을 제공합니다.

위 내용은 다른 배열의 인덱스를 사용하여 2D 배열에서 요소를 추출하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿