>백엔드 개발 >파이썬 튜토리얼 >NumPy에서 목록을 사용하여 인덱스별로 열을 효율적으로 선택하려면 어떻게 해야 합니까?

NumPy에서 목록을 사용하여 인덱스별로 열을 효율적으로 선택하려면 어떻게 해야 합니까?

Linda Hamilton
Linda Hamilton원래의
2024-10-27 02:11:30891검색

How Can I Efficiently Select Columns by Index Using Lists in NumPy?

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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