본문 바로가기

카테고리 없음

[파이썬 pandas 기초] 데이터프레임의 데이터 타입 바꾸기: astype()

pnadas dataframe을 다루다 보면 데이터 타입을 변경해야 할 때가 있습니다. 오늘은 그 방법을 알아보겠습니다.

 

DataFrame 데이터 타입을 바꾸는 두가지 방법

 

코드를 보면서 어떤 결과가 나오는지 살펴보겠습니다. 우선 데이터프레임을 만들어줍니다.

 

# 라이브러리를 불러옵니다.
import pandas as pd
# 샘플 데이터프레임을 생성합니다.
df = pd.DataFrame({'col1': [1, 2], 'col2': [3, 4]})
df

"""
	col1	col2
0	1	3
1	2	4
"""

 

 

df의 데이터타입을 확인하겠습니다. int 정수 타입인 것을 알 수 있습니다. 

 

print(df.dtypes)
"""
col1    int64
col2    int64
dtype: object
"""

 

 

float로 바꿔보겠습니다.

 

df = df.astype('float')
print(df.dtypes)
"""
col1    float64
col2    float64
dtype: object
"""

 

 

데이터프레임을 출력해보면 소수점이 생겼네요.

 

df
"""
col1	col2
0	1.0	3.0
1	2.0	4.0
"""

 

이 방법을 사용하면 손쉽게 데이터프레임의 데이터 타입을 변경할 수 있습니다. 하지만 대개의 경우 이렇게 전체를 바꾸기보다는, 특정 컬럼에 대해서만 변경이 필요한 경우가 더 많죠. 이번에는 특정 컬럼만 변경해보겠습니다.

 

특정 컬럼의 데이터 타입 변경하기

df = df.astype({'col1': 'int'})
print(df.dtypes)
"""
col1      int32
col2    float64
dtype: object
"""

 

딕셔너리를 이용해서 컬럼명과 데이터 타입을 매개변수로 전달하면 해당 컬럼의 데이터 타입만 변경되는 것을 확인할 수 있습니다. 이제 col1은 정수, col2는 float입니다.

 

데이터프레임을 출력해보겠습니다.

 

df
"""
	col1	col2
0	1	3.0
1	2	4.0
"""

 

 

- 이 글은 아나콘다(Anaconda3)가 설치된  주피터 노트북에서 작성되었습니다.