[파이썬][Numpy] 세밀한 조작 및 배열 마스킹 예제

Numpy를 사용하여 배열을 세밀하게 조작하고 배열 마스킹(masking)을 수행하는 예제를 제공하겠습니다. 배열 조작은 데이터를 필터링하거나 원하는 부분만 선택하고 데이터에 특정 조건을 적용하는 데 사용됩니다.

import numpy as np

# 1부터 10까지의 숫자로 이루어진 배열 생성
arr = np.arange(1, 11)

# 배열 내에서 짝수 요소만 선택
even_mask = arr % 2 == 0
even_elements = arr[even_mask]
print("짝수 요소:", even_elements)

# 배열 내에서 조건을 만족하는 요소만 선택
condition_mask = (arr > 3) & (arr < 8)
selected_elements = arr[condition_mask]
print("3보다 크고 8보다 작은 요소:", selected_elements)

# 배열 내에서 조건을 만족하지 않는 요소 변경
arr[arr < 5] = 0
print("5보다 작은 요소를 0으로 변경한 배열:", arr)

# 배열 내에서 특정 조건에 따라 값 변경
arr[arr % 2 == 0] += 10
print("짝수 요소에 10을 더한 배열:", arr)

위의 코드에서는 다음과 같은 작업을 수행합니다:

  1. 배열에서 짝수 요소만 선택하여 even_mask를 생성하고 이를 사용하여 짝수 요소를 선택합니다.
  2. 배열에서 3보다 크고 8보다 작은 요소만 선택하여 condition_mask를 생성하고 이를 사용하여 요소를 선택합니다.
  3. 배열에서 5보다 작은 요소를 모두 0으로 변경합니다.
  4. 배열에서 짝수 요소에 10을 더합니다.

이러한 작업을 통해 배열을 조작하고 필요한 데이터를 선택할 수 있습니다.