누락된 값이 있는 Pandas 열을 정수로 변환
Pandas 데이터 프레임을 처리할 때 특정 열의 데이터 유형을 지정해야 하는 경우가 많습니다. 그러나 열에 누락되거나 빈 값(NaN)이 포함된 경우 이를 'int'와 같은 정수 유형으로 변환하면 문제가 발생할 수 있습니다.
발생한 문제:
문제를 설명하기 위해 NaN이 포함된 'id'라는 열이 있는 CSV 파일에서 Pandas 데이터 프레임을 읽었다고 가정해 보겠습니다. 하지만 'id' 열을 정수형으로 지정해야 합니다.
오류 메시지:
'id' 열을 정수로 직접 변환하려고 할 때 CSV 파일을 읽는 동안 다음 오류가 발생합니다.
df= pd.read_csv("data.csv", dtype={'id': int}) error: Integer column has NA values
또는 CSV를 읽은 후 열 유형을 변환하려고 하면
df= pd.read_csv("data.csv") df[['id']] = df[['id']].astype(int) error: Cannot convert NA to integer
해결책:
Pandas 버전 0.24 이상에서는 Nullable Integer 데이터 유형을 사용하여 누락된 값이 있는 정수 데이터를 표현할 수 있습니다. IntegerArray를 사용합니다. 이 기능을 활용하려면:
from pandas.arrays import IntegerArray
arr = pd.array([1, 2, np.nan], dtype=pd.Int64Dtype())
df['id'] = df['id'].astype('Int64')
Nullable Integer 데이터 유형을 활용하여, Pandas는 의도한 데이터 유형을 유지하면서 누락된 값이 있는 정수 열을 처리할 수 있습니다.
위 내용은 누락된 값이 있는 Pandas 열을 정수 데이터 유형으로 변환하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!