Pandas: nan을 none으로 바꾸는 방법
다음 기본 구문을 사용하여 Pandas DataFrame에서 NaN 값을 None 으로 바꿀 수 있습니다.
df = df. replace (np. nan , None )
이 함수는 NaN 대신 누락된 값을 나타내기 위해 None 을 사용하는 데이터베이스로 pandas DataFrame을 내보내야 할 때 특히 유용합니다.
다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.
예: Pandas에서 NaN을 None으로 대체
다음과 같은 팬더 DataFrame이 있다고 가정합니다.
import pandas as pd
import numpy as np
#createDataFrame
df = pd. DataFrame ({' A ': [5, 6, 8, np.nan, 4, 15, 13],
' B ': [np.nan, 12, np.nan, 10, 23, 6, 4],
' C ': [2, 7, 6, 3, 2, 4, np.nan],
' D ': [5, np.nan, 6, 15, 1, np.nan, 4]})
#view DataFrame
print (df)
ABCD
0 5.0 NaN 2.0 5.0
1 6.0 12.0 7.0 NaN
2 8.0 NaN 6.0 6.0
3 NaN 10.0 3.0 15.0
4 4.0 23.0 2.0 1.0
5 15.0 6.0 4.0 NaN
6 13.0 4.0 NaN 4.0
DataFrame에는 여러 NaN 값이 있습니다.
각 NaN 값을 None 으로 바꾸려면 다음 구문을 사용할 수 있습니다.
#replace all NaN values with None
df = df. replace (np. nan , None )
#view updated DataFrame
print (df)
ABCD
0 5.0 None 2.0 5.0
1 6.0 12.0 7.0 None
2 8.0 None 6.0 6.0
3 None 10.0 3.0 15.0
4 4.0 23.0 2.0 1.0
5 15.0 6.0 4.0 None
6 13.0 4.0 None 4.0
DataFrame의 각 열에 있는 각 NaN은 None 으로 대체되었습니다.
특정 열에서 NaN 값만 None 으로 바꾸려면 다음 구문을 사용할 수 있습니다.
#replace NaN values with None in column 'B' only
df[' B '] = df[' B ']. replace (np. nan , None )
#view updated DataFrame
print (df)
ABCD
0 5.0 None 2.0 5.0
1 6.0 12.0 7.0 NaN
2 8.0 None 6.0 6.0
3 NaN 10.0 3.0 15.0
4 4.0 23.0 2.0 1.0
5 15.0 6.0 4.0 NaN
6 13.0 4.0 NaN 4.0
“B”열에서만 NaN 값이 None 으로 변경되었습니다.
관련 항목: Pandas에서 NaN 값을 0으로 바꾸는 방법
추가 리소스
다음 튜토리얼에서는 Pandas에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.
Pandas에서 특정 값을 바꾸는 방법
열 값으로 Pandas DataFrame을 필터링하는 방법
Pandas의 여러 열에 대한 NA 값을 채우는 방법