📌 timedelta 데이터 타입
timedelta는 두 날짜 또는 시간의 차이가 어느 정도인지 나타낼 때 사용하는 모듈이다. timedelta는 + 나 - 을 사용할 수 있기 때문에 어떤 날짜에 특정 기간 (일, 시, 분, 초)를 더하거나 뺄 수 있다.
➰전체 데이터 프레임 & 해당 columns 확인
먼저 전체 데이터 프레임(위의 경우는 t라고 지정)을 확인한 뒤 '배송기간'이라는 columns의 값만 추출해온다. '배송기간' columns의 값들은 '일수'형태의 값들이며 timedelta 타입의 데이터임을 알 수 있다. 이때 timedelta 형태의 데이터를 Int형태로 변환하려면 어떻게 해야 할까?
➰ 생각 1)
데이터 타입을 다른 형태로 변환하는 가장 기본적인 방법은 str( ), int( ), float( )를 이용하여 괄호 안에 내가 바꾸고 싶은 값을 넣어주면 된다.
TypeError: int() argument must be a string, a bytes-like object or a number, not 'Timedelta'
int( ) 를 이용하여 '배송기간' columns의 값을 int형태로 변환하면 에러가 뜨는 것을 확인할 수 있다.
➰ 생각 2)
이번에는 astype( ) 을 이용해서 int형으로 변환해보자. 출력 결과를 보면 데이터 타입은 int형으로 변환되었지만, 값들을 확인해보니 내가 원하는 형태가 아니다!
➰ 해결
해당 columns('배송기간')의 값들은 '일(days)' 형태의 데이터이다. 따라서 .dt.days 를 이용해 보면 timedelta 형태의 데이터가 우리가 원하는 형태인 Int형으로 변환되었음을 알 수 있다.
'💻프로그래밍 > python' 카테고리의 다른 글
[ pandas ] 6. 데이터 프레임 인덱스 설정 (set_index , reset_index) (0) | 2021.07.14 |
---|---|
[pandas] 5. 데이터 세기 (count , size, value_counts) (1) | 2021.07.13 |
[pandas] 4. 데이터 정렬 (sort_values, sort_index, by, ascending) (0) | 2021.06.16 |
[pandas] 3. 데이터 파악하기 (head, tail, shape, columns, dtype, isnull.sum, describe, info, unique, nunique) (0) | 2021.06.15 |
[pandas] 2-2. loc와 iloc 차이와 사용방법 (0) | 2021.06.15 |