NumPy: 목록을 사용하여 인덱스별로 효율적으로 열 선택
많은 데이터 조작 작업에는 NumPy 행렬에서 특정 열을 선택하는 작업이 포함됩니다. 선택할 열이 행마다 다를 경우 간단한 접근 방식에는 배열을 반복하는 것이 포함되며, 이는 대규모 데이터 세트의 경우 계산 비용이 많이 들 수 있습니다.
그러나 NumPy는 부울 또는 정수 배열을 사용하여 보다 최적화된 솔루션을 제공합니다. 열 인덱스 목록 대신 원본 행렬과 동일한 모양의 행렬을 생성할 수 있습니다. 여기서 각 열에는 해당 열을 선택해야 하는지 여부를 나타내는 값이 포함됩니다.
예를 들어 다음 행렬을 고려해 보세요.
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
다음 인덱스 행렬:
[[False, True, False], [True, False, False], [False, False, True]]
NumPy의 직접 선택을 사용하면 원하는 값을 쉽게 추출할 수 있습니다.
<code class="python">a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) b = np.array([[False, True, False], [True, False, False], [False, False, True]]) selected_values = a[b]</code>
이렇게 하면 원하는 출력이 생성됩니다. :
[2, 4, 9]
또는 효율성을 높이기 위해 arange() 함수와 직접 선택을 사용할 수도 있습니다.
<code class="python">selected_values = a[np.arange(len(a)), [1, 0, 2]]</code>
최적화된 NumPy 선택 방법을 활용하면 행당 인덱스를 변경하여 열을 선택할 때 데이터 조작 작업의 성능을 향상시킵니다.
위 내용은 NumPy에서 목록을 사용하여 인덱스별로 열을 효율적으로 선택하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!