반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 파이썬
- Python
- Kotlin
- SQL
- GIT
- Redshift
- c#
- Mac
- Apache
- PostgreSQL
- math
- google apps script
- Excel
- Google Spreadsheet
- Google Excel
- array
- django
- list
- string
- dataframe
- Tkinter
- PySpark
- matplotlib
- numpy
- Github
- gas
- hive
- Java
- PANDAS
Archives
- Today
- Total
달나라 노트
Python Pandas : isna (NaN 값 테스트하기, NaN 값 필터링) 본문
728x90
반응형
Pandas의 isna method는 어떤 값이 NaN값인지 아닌지를 체크합니다.
NaN값이라면 True, NaN값이 아니라면 False를 return합니다.
아래 예씨를 보시죠.
import numpy as np
import pandas as pd
print(pd.isna(np.nan))
-- Result
True
isna method가 NaN값을 받으니 True값을 return하는 것을 볼 수 있습니다.
마치 아래 글에 있는 numpy의 isnan과 비슷한 기능을 하죠.
https://cosmosproject.tistory.com/367
한 가지 중요한 차이가 있다면
numpy의 isnan은 parameter로서 어떤 값만을 받을 수 있으나
pandas의 isna는 단순 숫자/글자/nan값 하나 뿐 아니라 Series나 DataFrame도 parameter로서 받을 수 있습니다.
다음 예시를 보시죠.
import pandas as pd
import numpy as np
dict_test = {
'col1': [1, 2, 3, 4, 5],
'col2': ['a', 'b', np.nan, 'd', 'e'],
'col3': [np.nan, 1, 2, 3, 4]
}
df_test = pd.DataFrame(dict_test)
print(df_test)
print(pd.isna(df_test.loc[:, 'col2']))
print(pd.isna(df_test))
-- Result
col1 col2 col3
0 1 a NaN
1 2 b 1.0
2 3 NaN 2.0
3 4 d 3.0
4 5 e 4.0
0 False
1 False
2 True
3 False
4 False
Name: col2, dtype: bool
col1 col2 col3
0 False False True
1 False False False
2 False True False
3 False False False
4 False False False
pandas의 isna method에 Series와 DataFrame을 전달했더니
전달받은 Series나 DataFrame에 존재하는 모든 요소에 대해 NaN값인지 아닌지 체크하여 NaN값의 위치에는 True를 NaN값이 아닌 위치에는 False를 return해주는 것을 볼 수 있습니다.
728x90
반응형
'Python > Python Pandas' 카테고리의 다른 글
Comments