12. rain_1h: 최근 1시간 동안의 강우량을 밀리미터 단위로 나타낸 값(일부 값은 null로 표시될 수 있음)
13. snow_1h: 최근 1시간 동안의 적설량을 밀리미터 단위로 나타낸 값 (일부 값은 null로 표시될 수 있음)
14. clouds_all: 구름 덮개의 백분율
15. weather_main: 해당 일시의 주요 날씨 카테고리 (예: 맑음, 흐림, 비)
위의 코드는 'bike_df' 데이터프레임에 'covid'라는 새로운 열(column)을
추가하는 코드입니다. 'date' 열을 기준으로 조건문을 사용하여 'covid' 열의
값을 지정합니다.
해당 코드는 람다(lambda) 함수를 활용하여 'date' 열의 각 날짜를 비교하여
'precovid', 'covid', 'postcovid'로 분류합니다.
- 'date'가 '2020-04-01' 이전인 경우, 'precovid'로 분류합니다.
- 'date'가 '2020-04-01' 이후이고 '2021-04-01' 이전인 경우, 'covid'로 분류합니다.
- 'date'가 '2021-04-01' 이후인 경우, 'postcovid'로 분류합니다.
따라서 'covid' 열은 각 날짜에 따라 'precovid', 'covid', 'postcovid'로
분류된 값들을 가지게 됩니다. 이를 활용하여 데이터프레임의 날짜에 따른
COVID-19 팬데믹 전후를 구분할 수 있습니다.
# 파생변수 season
# 3월 ~ 5월: spring
# 6월 ~ 8월: summer
# 9월 ~ 11월: fall
# 12월 ~ 2월: winter
import pandas as pd
# 월(Month) 정보를 추출하여 'month' 열 생성
bike_df['month'] = pd.to_datetime(bike_df['datetime']).dt.month
# 'season' 파생변수 생성
bike_df['season'] = bike_df['month'].apply(lambda x: 'spring' if x in [3, 4, 5]
else 'summer' if x in [6, 7, 8]
else 'fall' if x in [9, 10, 11]
else 'winter')