Python/Pandas
[pandas] 날짜 데이터 다루기
ISLA!
2023. 8. 9. 16:31
to_datetime
사용법 : pd.to_datetime(df)
- 문자열에 적용하면 timestamp 유형이 됨
- 리스트에 적용하면 datetime64 유형이 됨
#문자열에 to_datetime => timestamp
date_string = "2023-03-02"
print(type(date_string))
datetime_obj = pd.to_datetime(date_string)
print(datetime_obj)
print(type(datetime_obj))
#리스트에 to_datetime => datetime64
date_list = ["2023-03-02"]
print(type(date_list))
datetime_obj = pd.to_datetime(date_list)
print(datetime_obj)
print(type(datetime_obj))
- object 타입의 데이터를 날짜(datetime)형으로 변환하기
#코드 예시 : sales의 ['datesold'] 컬럼 데이터 타입 변경
sales['datesold'] = pd.to_datetime(sales['datesold'])
datetime에서 연도, 월, 일을 추출
- 기본적으로 datetime 유형에만 해당 메서드 적용가능
- 사용법 : df.dt.year
sales['year'] = sales['datesold'].dt.year
sales['month'] = sales['datesold'].dt.month
sales['day'] = sales['datesold'].dt.day
시차 다루기 : shift 기능
- 사용법 : df['컬럼명'].shift(숫자, fill_value=0)
- 숫자는 정수로 나타나고, 예를 들어 1은 뒤로 한 행 앞에서 값을 당겨오는 것
- fill_value 는 값이 없는 부분을 어떻게 처리할 지
- shift 한 것과 기존 컬럼의 차를 이용해 증감정도를 파악할 수 있다.
temp_df['shifted_v1'] = temp_df['price'].shift(1, fill_value=0).astype(int)
temp_df['diff'] = temp_df['price'] - temp_df['shifted_v1']
Datetime 타입을 한글 날짜로
사용법 : df['컬럼명'].dt.strftime(날짜의 형식)
sales['한글날짜'] = sales['datesold'].dt.strftime('%Y년 %m월 %d일')
sales.head()
728x90