Python
[파이썬] 누락된 일자데이터를 이전 날짜데이터로 채우기
꼬꼬마코더
2024. 5. 10. 15:36
728x90
import pandas as pd
from datetime import datetime, timedelta
# 시작 날짜와 종료 날짜 설정
start_date = datetime(2019, 1, 2).date()
end_date = datetime(2023, 12, 31).date()
# 날짜를 datetime 형식으로 변환
kosdaq_20192023['일자'] = pd.to_datetime(kosdaq_20192023['일자']).dt.date
# 누락된 날짜에 대한 데이터 채우기
current_date = start_date
while current_date <= end_date:
#if current_date not in kosdaq_20192023['일자']:
if not kosdaq_20192023['일자'].isin([current_date]).any():
# 이전 날짜의 데이터를 가져옴
previous_date = current_date - timedelta(days=1)
previous_data = kosdaq_20192023.loc[kosdaq_20192023['일자'] == previous_date]
previous_data['일자']=current_date
# 누락된 날짜의 데이터 채우기
#fill_data.append({'일자': current_date, '상장시가총액': previous_data[0]})
kosdaq_20192023 = pd.concat([kosdaq_20192023, previous_data], ignore_index=True)
kosdaq_20192023 = kosdaq_20192023.sort_values(by='일자')
kosdaq_20192023.reset_index(drop=True, inplace=True)
current_date += timedelta(days=1)
# 결과 출력
print(kosdaq_20192023)