개요
Pandas DataFrame의 데이터 타입을 변환할 때는 astype 함수를 사용한다. astype 함수는 DataFrame 컬럼의 데이터 타입 변경할 때에도 사용하는데 방법을 적어둔다.
단일 컬럼 형변환
다음과 같이 object 형으로 구성된 DataFrame이 있다고 하자.
df= pd.DataFrame({'col_str_1': ['1', '2', '3'],
'col_str_2': ['4', '5', '6'],
'col_str_3': ['7.0', '8.1', '9.2']})
df.dtypes
# 실행 결과
col_str_1 object
col_str_2 object
col_str_3 object
dtype: object
데이터 중 col_str_1 컬럼을 int 형으로 변경해 본다. 변경할 컬럼을 인덱싱 하면 된다.
df['col_str_1'] = df['col_str_1'].astype(int)
df.dtypes
# 실행 결과
col_str_1 int32
col_str_2 object
col_str_3 object
dtype: object
여러 컬럼 형변환
여러 컬럼을 형변환할 때는 변경할 컬럼 이름과 데이터 타입을 Dictionary로 전달한다. 여러 컬럼의 데이터 타입을 한 번에 변환할 수도 있다.
df = df.astype({'col_str_2': int, 'col_str_3': float})
df.dtypes
# 실행 결과
col_str_1 object
col_str_2 int32
col_str_3 float64
dtype: object