[python] NumPy를 사용하여 다차원 배열의 값들을 대체(replace)하는 방법은 무엇인가요?
NumPy는 다차원 배열을 다루기 위한 파이썬 라이브러리입니다. 다차원 배열의 값을 대체하는 방법으로는 np.where()
함수를 사용할 수 있습니다.
np.where()
함수를 사용하여 조건에 따라 값을 대체할 수 있습니다. 원하는 조건을 입력하고, 조건이 참일 때의 값을 지정하고, 조건이 거짓일 때의 값을 지정합니다.
다음은 NumPy를 사용하여 다차원 배열의 값들을 대체하는 예제 코드입니다.
import numpy as np
# 2차원 배열 생성
arr = np.array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
# 배열의 값을 대체
replaced_arr = np.where(arr > 5, 0, arr)
print(replaced_arr)
위의 코드에서는 2차원 배열 arr
에 대해 조건 arr > 5
를 설정하였습니다. 조건이 참일 때(arr > 5
가 True
인 원소)는 0으로 대체하고, 조건이 거짓일 때(arr > 5
가 False
인 원소)는 원래의 값으로 대체합니다. 결과적으로 5보다 큰 원소는 0으로 대체되고, 5 이하의 원소는 그대로 유지됩니다.
실행 결과는 다음과 같이 출력됩니다.
[[1 2 3]
[4 5 0]
[0 0 0]]
따라서 NumPy의 np.where()
함수를 사용하면 다차원 배열의 값을 대체할 수 있습니다.
참고 자료: