时间序列分析补齐日期

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)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值