Python Pandas 패키지의 DataFrame을 사용하다 보면
데이터프레임의 값이 np.inf 또는 -np.inf로 채워진 경우가 있습니다.
np.inf, -np.inf는 어떤 사칙연산을 수행해도 np.inf or -np.inf 로만 변환되기에
코드에서 종종 오류를 일으킵니다.
이때 DataFrame.replace 메서드로 간단하게 np.inf, -np.inf를 None값으로 대체할 수 있습니다.
import pandas as pd
import numpy as np
df = pd.DataFrame([1000, 2000, 3000, -4000, np.inf, -np.inf])
print("Original DataFrame:")
print(df)
print("Removing infinite values:")
df = df.replace([np.inf, -np.inf], np.nan) # replace 메서드로 np.inf를 None(np.nan)으로 변경
print(df)
======= Output ======
>>>
Original DataFrame:
0
0 1000.0
1 2000.0
2 3000.0
3 -4000.0
4 inf
5 -inf
Removing infinite values:
0
0 1000.0
1 2000.0
2 3000.0
3 -4000.0
4 NaN
5 NaN
혹시 궁금하신 사항은 댓글 남겨주세요.
감사합니다.
1. w3resource, [Pandas: Remove infinite values from a given DataFrame], https://www.w3resource.com/python-exercises/pandas/python-pandas-data-frame-exercise-52.php
2. pandas 공식문서, [pandas.DataFrame.replace], https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.replace.html
[Airflow] ModuleNotFoundError: No module named 'sqlalchemy.ext.declarative.clsregistry' (0) | 2021.04.20 |
---|---|
[Python] Python으로 파일생성 시간 및 용량 출력하기 (0) | 2021.04.19 |
[Python] 인자를 넘겨받아 스크립트(.py 파일) 실행하는 2가지 방법 (0) | 2021.04.05 |
[Python] Instance, Class, Static Method(메소드) 정리 자료 (0) | 2021.04.05 |
[Python 함수 인자 입력 받기] Python *args와 **kargs (0) | 2021.03.26 |