반응형
Python pandas 데이터프레임 요일 구하기
파이썬의 판다스 모듈로 데이터프레임 내의 날짜 정보를 다룰 때,
요일 정보를 추출하는 여러 가지 방법들에 대하여 정리해보도록 하겠습니다.
이해를 돕기 위하여 아래와 같은 데이터프레임 df를 예시로 가정해보도록 하겠습니다.
참고로, 먼저 아래 코드로 시간 정보가 있는 열을 datetime 자료형으로 변환해주어야 합니다.
df['시간'] = pd.to_datetime(df['시간'])
1. dt.weekday : 요일 정보를 숫자로 추출
datetime 자료형에서 dt.weekday 속성을 통하여 요일 정보를 숫자로 가져올 수 있습니다.
0은 월요일, 1은 화요일, ..., 6은 일요일을 의미합니다.
df['weekday'] = df['시간'].dt.weekday
df
반응형
2. dt.day_name() : 요일의 영어 이름을 추출
datetime 자료형에서 제공하는 day_name() 메소드로 각 요일의 영어 이름을
단번에 가져오는 것이 가능합니다.
(참고 : 속성이 아니라 메소드라 dt.day_name이 아닌 dt.day_name()으로 사용해야 합니다.)
df['day_name'] = df['시간'].dt.day_name()
df
3. 요일의 한글 이름을 추출
요일의 한글 이름은 apply 메소드 등의 기능을 활용하여 weekday의 정보를
월 ~ 일의 이름으로 변환시켜주시면 됩니다.
요일 이름이 담긴 리스트를 선언하고 0~6번째 인덱스의 값에 매칭되는 이름으로
한글 요일 이름을 추출한 예시 코드는 아래와 같습니다.
# 0~6번 인덱스 위치에 각 한글 요일 이름이 담긴 리스트
weekday_list = ['월', '화', '수', '목', '금', '토', '일']
# apply 함수로 숫자 -> 요일 이름으로 변환
df['요일'] = df.apply(lambda x : weekday_list[x['weekday']], axis = 1)
df
다른 형태의 요일 이름을 대신 사용하고 싶다면 위의 코드에서
weekday_list의 원소들만 변경하여 적용해주시면 됩니다.
'Python > Pandas' 카테고리의 다른 글
[Pandas] 파이썬 판다스 isin 함수 및 not isin 조건 사용 방법 (0) | 2022.09.18 |
---|---|
[Pandas] 판다스 설치 / 버전 확인 / 버전 변경(업데이트, 다운그레이드) 방법 정리 (0) | 2022.08.15 |
[Pandas] 파이썬 데이터프레임 행/열 순서(위치) 변경 방법 정리 (0) | 2022.07.10 |