판다스 문자열(str), 정수형(int) 타입 변환하기 : astype 함수
이번 포스팅에서는 astype 함수를 통하여 판다스 데이터프레임 column의 자료형을 변환시키는 방법에 대해서 알아보도록 하겠습니다.
일단 다음과 같은 상황을 생각해보겠습니다.
먼저 간단한 데이터프레임을 선언한 뒤에
데이터 프레임 내 score 열의 점수를 모두 더하려는 상황인데 세 숫자가 합쳐진 것이 아니라, 문자열(str) 자료형의 덧셈처럼 concat이 되어 6자리의 숫자처럼 변해버린 상황이라고 가정해보겠습니다. 원하는 결과를 얻지 못한 상태입니다.
dtypes를 통하여 각 column의 자료형을 살펴보니 int 자료형이 아닌 object 자료형이 들어있는 것을 확인할 수 있습니다.
이제 astype 함수를 통하여 int 자료형으로 변환시키고, 덧셈이 정상적으로 이루어지는지 확인해보도록 하겠습니다.
다음과 같이 astype 함수를 이용한 코드 한 줄로 간단히 자료형 변환을 진행할 수 있습니다. 세 숫자의 덧셈도 정상 진행되는 것을 확인 가능합니다.
dtypes를 통해서도 score column의 자료형이 int64로 정수형 타입으로 변환된 것을 확인 가능합니다.
마지막으로 int 자료형 column을 str 자료형 column으로 다시 바꾸어보겠습니다.
이 경우도 마찬가지로 astype 함수를 이용해주시면 간단하게 해결됩니다.
object 자료형으로 정상 변환된 것도 확인하였습니다.
astype 함수는 이 외에도 float 등 다른 자료형으로의 변환에도 사용 가능하니 참고하시면 좋을 듯 합니다.
또한, np.int32처럼 다른 모듈에서 지원하는 특수 객체로의 변환도 가능하고, 원칙적으로 각 element로 리스트, 튜플 등 자료형도 가질 수 있으니 필요한 경우에 잘 활용하시면 도움이 되실 것으로 생각됩니다.
지금까지 매우 simple하지만 알아두면 굉장히 유용한 파이썬 판다스의 astype 함수의 사용법에 대해서 간단하게 알아보았습니다.
'Python > Pandas' 카테고리의 다른 글
[Pandas] 파이썬 판다스 데이터프레임 인덱싱 총정리(loc, iloc) (0) | 2021.11.27 |
---|---|
[Pandas] 파이썬 판다스 Deep copy와 Shallow copy 비교(데이터 프레임 복사 copy 함수) (0) | 2021.11.19 |
[Pandas] 파이썬 판다스 그룹화 하기 : groupby 함수 (4) | 2021.11.16 |