인프런 커뮤니티 질문&답변
수강 중 질문사항
작성
·
217
답변 3
1
1
박조은
지식공유자
안녕하세요.
split으로 나누는 방법도 있지만 pd.to_datetime 을 사용해서 변경해 보실 수도 있어요.
YYYYMMDD 처럼 되어 있다면 일단 데이터 타입을 먼저 확인해 주셔야 해요.
int 타입인데 연월일일때 pd.to_datetime 을 사용하면 타임스탬프라는 형식으로 이해해서 원하는 대로 변경이 되지 않습니다.
데이터 타입을 object 형식으로 우선 변경이 필요하고요.
해당 컬럼명이 "날짜"라고 가정하고 df 라는 변수에 데이터프레임으로 들어있다고 가정한다면
다음과 같이 날짜 타입으로 변경해서 원하는 형태의 데이터를 추출해 보실 수 있습니다.
df["날짜"] = pd.to_datetime(df["날짜"].astype(str))
연도추출 => df["날짜"].dt.year
월추출 => df["날짜"].dt.month
날짜추출 => df["날짜"].dt.day
또, 위 방법을 사용하지 않고 split을 사용한다면
df["날짜"] = df["날짜"].astype(str)
아래와 같은 슬라이싱 방법을 사용하실 수도 있습니다.
df["날짜"].str[:4]
0





