[Numpy] 조건문 걸어서 값 넣기(np.where)
- Python/Numpy
- 2021. 4. 30.
반응형
반응형
numpy에 있는 where() 함수에 대해 알아보겠습니다.
결론적으로 말하면 엑셀의 if 함수와 같은 역할을 합니다.
쓰는 법도 비슷합니다.
파라미터는 다음과 같습니다.
np.where(condition,x,y)
엑셀의 if와 같이 condition은 말 그대로 조건이고
x는 True일때의 값, y는 False일때의 값을 의미합니다.
예를 들어보겠습니다.
a = np.array(range(15))
a= a.reshape(3,5)
여기서 7보다 큰 수는 1, 아니면 0으로 바꾸겠습니다.
np.where(a>7,1,0)
이번에는 짝수,홀수로 나눠보겠습니다.
np.where(a%2==0,'even','odd')
이렇듯 자신이 원하는 값으로 바꿀 수 있습니다.
이렇게 만들고서 엑셀에 저장하면 엑셀에서 일일히 드래그 작업을 하지않고 문서를 작성할 수 있습니다.
판다스에 넣어봅시다.
인덱스는 신경쓰지 않고 짝수,홀수 구분한 것을 덧붙여서 데이터프레임을 만들겠습니다.
import pandas as pd
a = np.array(range(15))
b = np.where(a%2==0,'even','odd')
df = pd.DataFrame({'value' :a ,'classify': b})
이 데이터프레임을 엑셀파일로 저장만 하면 간단하게 문서를 만들 수 있습니다.
관련포스팅
[Python/Numpy] - [Numpy] Bool 이용하기
'Python > Numpy' 카테고리의 다른 글
[Numpy]격자 그리드 만들기(meshgrid) (1) | 2021.05.19 |
---|---|
[Numpy] 구조체(structured array) (0) | 2021.05.01 |
[Numpy]행렬곱(@)과 내적(dot) 그리고 별연산(*) (0) | 2021.04.07 |
[Numpy] ndarray에 값 추가하기 (2) | 2021.03.21 |
ndarray 데이터로 그래프 그리기(matplotlib) (2) | 2020.06.05 |