Table of Contents

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)