-
판다스 날짜 추출 - 연,월,일 분리코딩 연습 2024. 3. 28. 16:51
날짜 데이(2023-01-01)에서 연,월,일을 각각 분리하여 다른 열(컬럼)에 저장하는 판다스 날짜 추출 연습 코드. 월, 일의 경우 2자리를 유지하도록 추출하기 위해 문자열 포맷팅을 사용함
판다스로 날짜에서 연,월일, 추출해보기
▶ 날짜 컬럼이 있는 엑셀 파일 : test.xlsx
▶ 판다스로 엑셀 파일을 불러오기
'test.xlsx' 파일을 읽어와 데이터프레임으로 저장한 후, 그 데이터프레임을 출력하는 작업을 수행함
▶ 엑셀 파일이 아닌 dict 타입 날짜를 사용하여 연, 월, 일 분리하기
dict를 DataFrame으로 만든 후 날짜 컬럼 'startDt' 열에 대해 to_datetime()와 dt 접근자를 사용하여 연도, 월, 일을 추출하고 각각 'year', 'month', 'day' 열에 저장함
▶ 연, 월, 일을 2자리 형식으로 추출하는 방법
연도는 마지막 두 자리, 월과 일은 각각 2자리로 만들어서 DataFrame에 추가하는 작업을 수행함
1차 추출한 연, 월, 일에 값에 대해
연도는 데이터 타입을 astype()으로 문자열로 만들고 str[-2:] 슬라이싱 처리
월과 일은 문자열 포맷팅 람다 함수를 받는 apply() 함수를 사용함
▶ 문자열 포맷팅을 f-스트링으로 처리
월과 일의 문자열 포맷팅을 f-스트링과 zfill() 메서드를 사용하여 월, 일을 두 자리로 맞춤
pandas의 Series 객체에서 제공되는 datetime 속성 및 메서드 목록
datetime 속성 및 메서드 pandas.Series.dt.date pandas.Series.dt.time pandas.Series.dt.timetz pandas.Series.dt.year pandas.Series.dt.month pandas.Series.dt.day pandas.Series.dt.hour pandas.Series.dt.minute pandas.Series.dt.second pandas.Series.dt.is_leap_year pandas.Series.dt.daysinmonth pandas.Series.dt.days_in_month pandas.Series.dt.tz pandas.Series.dt.freq pandas.Series.dt.unit pandas.Series.dt.normalize pandas.Series.dt.isocalendar pandas.Series.dt.to_period pandas.Series.dt.to_pydatetime pandas.Series.dt.microsecond pandas.Series.dt.tz_localize pandas.Series.dt.nanosecond pandas.Series.dt.tz_convert pandas.Series.dt.dayofweek pandas.Series.dt.normalize pandas.Series.dt.strftime pandas.Series.dt.day_of_week pandas.Series.dt.round pandas.Series.dt.weekday pandas.Series.dt.floor pandas.Series.dt.dayofyear pandas.Series.dt.ceil pandas.Series.dt.day_of_year pandas.Series.dt.month_name pandas.Series.dt.days_in_month pandas.Series.dt.day_name pandas.Series.dt.quarter pandas.Series.dt.as_unit pandas.Series.dt.is_month_start pandas.Series.dt.qyear pandas.Series.dt.is_month_end pandas.Series.dt.start_time pandas.Series.dt.end_time pandas.Series.dt.is_quarter_start pandas.Series.dt.days pandas.Series.dt.is_quarter_end pandas.Series.dt.seconds pandas.Series.dt.is_year_start pandas.Series.dt.microseconds pandas.Series.dt.is_year_end pandas.Series.dt.nanoseconds pandas.Series.dt.components pandas.Series.dt.unit 주요 시간 범위 지정 부호
지정자 설명 H 시간단위 T 분단위 S 초단위 L 밀리초 단위 U 마이크로초 단위 N 나노초 단위 B 평일 C 사용자가 정의한 평일 D 일자 단위 W 주단위 MS 월시작일 M 월마지막날 QS 분기의 시작일 Q 분기의 마지막 날 AS 연시작일 A 연마지막 날 SMS 월 시작일과 15일 SM 15일과 월 마지막 날 BM 휴일을 제외한 M BQ 일을 제외한 Q BQS 휴일을 제외한 QS BA 휴일을 제외한 A BAS 유일을 제외한 AS BH 업무시간 단위(9~16시) CBM BM에 사용자정의 BMS 휴일을 제외한 MS CBMS BMS에 사용자 정의 '코딩 연습' 카테고리의 다른 글
동영상 음원추출 - 파이썬 moviepy 사용 (0) 2024.11.07 네이버 주식 데이터 추출(크롤링), 판다스 그래프 그리기 (0) 2024.03.30 썸네일 이미지 만들기 용량 줄이기(with python) (0) 2023.12.10 SQL 함수, 서브 쿼리 연습 (0) 2023.12.08 DB, DBMS, 그리고 SQL 기본 문법 알아보기 (0) 2023.12.08