728x90
728x90
제1유형의 날짜를 변환하는 실습 내용입니다.
날짜 및 시각 형식 변환, 날짜 계산, 기간 계산 등 날짜에 관한 다양한 유형들이 있습니다.

문1-1. Date1 형식 변환 (2024-02-17)
print(df['Date1'])
df['Date1'] = pd.to_datetime(df['Date1'])
print(df['Date1'])
0 2024-02-17
1 2024-02-18
2 2024-02-19
Name: Date1, dtype: object
0 2024-02-17
1 2024-02-18
2 2024-02-19
Name: Date1, dtype: datetime64[ns]
문1-2. Date2 형식 변환 (2024:02:17)
print(df['Date2'])
df['Date2'] = pd.to_datetime(df['Date2'], format='%Y:%m:%d') # 년도 4자리는 대문자
print(df['Date2'])
문1-3. Date3 형식 변환 (24/02/17)
print(df['Date3'])
df['Date3'] = pd.to_datetime(df['Date3'], format='%y/%m/%d') # 년도 2자리는 소문자
print(df['Date3'])
문1-4. Date4 형식 변환 (02/17/2024)
print(df['Date4'])
df['Date4'] = pd.to_datetime(df['Date4'])
print(df['Date4'])
문1-5. Date5 형식 변환 (17-Feb-2024)
print(df['Date5'])
df['Date5'] = pd.to_datetime(df['Date5'])
print(df['Date5'])
문1-6. Date6 형식 변환 (2024년02월17일)
print(df['Date6'])
df['Date6'] = pd.to_datetime(df['Date6'], format='%Y년%m월%d일')
print(df['Date6'])
문2-1. DateTime1 형식 변환 (24-02-17 11:45:30)
print(df['DateTime1'])
df['DateTime1'] = pd.to_datetime(df['DateTime1'], format='%y-%m-%d %H:%M:%S') # 시간 H,M,S는 대문자
print(df['DateTime1'])
0 24-02-17 11:45:30
1 24-02-18 12:55:45
2 24-02-19 13:30:15
Name: DateTime1, dtype: object
0 2024-02-17 11:45:30
1 2024-02-18 12:55:45
2 2024-02-19 13:30:15
Name: DateTime1, dtype: datetime64[ns]
문2-2. DateTime2 형식 변환 (2024-02-17 11-45-30)
print(df['DateTime2'])
df['DateTime2'] = pd.to_datetime(df['DateTime2'], format='%Y-%m-%d %H-%M-%S')
print(df['DateTime2'])
문2-3. DateTime3 형식 변환 (02/17/2024 11:45:30 AM)
print(df['DateTime3'])
df['DateTime3'] = pd.to_datetime(df['DateTime3'])
print(df['DateTime3'])
문2-4. DateTime4 형식 변환 (17 Feb 2024 11:45:30)
print(df['DateTime4'])
df['DateTime4'] = pd.to_datetime(df['DateTime4'])
print(df['DateTime4'])
문3. 날짜 분리
df['year'] = df['DateTime2'].dt.year
df['month'] = df['DateTime2'].dt.month
df['day'] = df['DateTime2'].dt.day
df['hour'] = df['DateTime2'].dt.hour
df['minute'] = df['DateTime2'].dt.minute
df['second'] = df['DateTime2'].dt.second
df['week'] = df['DateTime2'].dt.dayofweek # 요일, 0:월, 1:화 ~ 6:일
df['주말'] = df['DateTime2'].dt.dayofweek >= 5 # 주말
df

문4-1. 날짜 계산
df = pd.read_csv("date.csv", usecols=['DateTime4'], parse_dates=['DateTime4']) # 특정 컬럼만 불러오기
day = pd.Timedelta(days=99) # 100일째 되는 날
hour = pd.Timedelta(hours=100) # 100시간 이후
three = pd.Timedelta(weeks=3, days=3, hours=3, minutes=3, seconds=3)
df['100일'] = df['DateTime4'] + day
df['100시간'] = df['DateTime4'] + hour
df['+3'] = df['DateTime4'] + three
df['-3'] = df['DateTime4'] - three
df

문4-2. 기간 계산
diff = df['100일'] - df['100시간']
print(diff)
print( diff.dt.total_seconds() ) # 기간을 초로 변환 (timedelta에만 사용 가능)
print( diff.dt.total_seconds()/60 ) # 분
print( diff.dt.total_seconds()/60/60 ) # 시간
print( diff.dt.total_seconds()/60/60/24 ) # 일
0 94 days 20:00:00
1 94 days 20:00:00
2 94 days 20:00:00
dtype: timedelta64[ns]
0 8193600.0
1 8193600.0
2 8193600.0
dtype: float64
0 136560.0
1 136560.0
2 136560.0
dtype: float64
0 2276.0
1 2276.0
2 2276.0
dtype: float64
0 94.833333
1 94.833333
2 94.833333
dtype: float64
문4-3. 시간 계산
# 5.49분을 30초 이상이면 올림, 미만이면 버림
value = 5.49 # 0.49분 X 60 = 29.4초
round(value)
[빅데이터분석기사/실기] 제1유형. 판다스 실습 - 조건필터, 결측치 처리, 통계분석, 데이터 개수
제1유형의 기초 학습에 이어,이번에는 실제 문제 유형을 풀어보는 실습에 대한 내용입니다.응용력이 중요하기 때문에, 다양한 문제를 많이 풀어보는 것이 합격하는데 가장 큰 도움이 되는 것 같
dataslog.tistory.com
728x90
728x90
'빅데이터 분석기사 > 실기 요약' 카테고리의 다른 글
| [빅데이터분석기사/실기] 제1유형. 판다스 실습 - 모의문제 (1) | 2025.06.07 |
|---|---|
| [빅데이터분석기사/실기] 제1유형. 판다스 실습 - 문자열 (0) | 2025.06.06 |
| [빅데이터분석기사/실기] 제1유형. 판다스 실습 - 조건필터, 결측치 처리, 통계분석, 데이터 개수확인 (0) | 2025.05.26 |
| [빅데이터분석기사/실기] 제1유형. 판다스 기초 - 데이터 불러오기/추가/삭제/정렬, 인덱싱/슬라이싱 (0) | 2025.05.25 |
| [빅데이터분석기사/실기] 0. 파이썬 기초 (1) | 2025.05.24 |