import pandas as pd
# 将销售日期列转换为日期时间类型
daily_sales_sum['销售日期'] = pd.to_datetime(daily_sales_sum['销售日期'])
# 使用布尔索引筛选出2022年7月至2023年6月的数据
data_july_2022_to_june_2023 = daily_sales_sum[
(daily_sales_sum['销售日期'] >= '2022-07-01') &
(daily_sales_sum['销售日期'] <= '2023-06-30')
]
# 获取所有唯一的单品名称
unique_products = data_july_2022_to_june_2023['单品名称'].unique()
# 创建一个包含所有日期的日期范围
date_range = pd.date_range(start='2022-07-01', end='2023-06-30')
# 创建一个空的DataFrame来存储补齐后的数据
completed_data = pd.DataFrame()
# 遍历每个单品
for product in unique_products:
# 获取当前单品的数据
product_data = data_july_2022_to_june_2023[data_july_2022_to_june_2023['单品名称'] == product]
# 统一日期格式为带有时间的日期
product_data['销售日期'] = pd.to_datetime(product_data['销售日期'])
# 使用set_index将日期设置为索引
product_data = product_data.set_index('销售日期')
# 使用reindex方法按日期范围补齐数据,缺失数据用0填充
product_data = product_data.reindex(date_range, fill_value=0)
# 将单品名称列添加回DataFrame
product_data['单品名称'] = product
# 将补齐后的数据添加到completed_data
completed_data = pd.concat([completed_data, product_data.reset_index()], axis=0, ignore_index=True, sort=False)
时间序列分析补齐日期
最新推荐文章于 2023-10-15 18:49:55 发布