Python数据分析如何填充缺失日期_Pandas的asfreq技巧
asfreq填充缺失日期前必须将索引设为DatetimeIndex否则静默失效需确保索引为datetime64[ns]用freqD等正确频率对齐再链式调用ffill()等填充NaN。asfreq 填充缺失日期前必须重设索引为 DatetimeIndex直接对普通 df 调用 asfreq 会报错或静默失效因为 asfreq 只作用于时间序列索引。常见错误现象是返回原 DataFrame没新增任何行也没报错——其实是索引类型不对。实操建议立即学习“Python免费学习笔记深入”先确认索引类型df.index.dtype 必须是 datetime64[ns]不是 object 或 int64若日期在列里比如 date 列得先执行df df.set_index(date).sort_index()如果日期列含字符串需先转类型df[date] pd.to_datetime(df[date])再设索引asfreq 的 freq 参数选错会导致日期对不上asfreq 不是“补全所有空缺”而是按指定频率freq对齐索引再用前向/后向/插值等方式填充值。选错 freq 会让结果看起来“漏了”或“多了”日期。实操建议立即学习“Python免费学习笔记深入”日频填空必须用 freqD不是 d 或 day周频用 W月频用 M 或 MS月初如果原始数据是工作日周一到周五但用了 freqD就会把周末也补进去且默认填 NaN —— 这不是 bug是预期行为想只补工作日得先用 asfreq(freqB)B 表示 Business Day但注意它不会自动识别节假日需配合 CustomBusinessDayasfreq 默认用 NaN 填充不等于 fillnaasfreq 的核心动作是“重采样对齐”不是“智能补值”。它只负责把索引拉成规则频率对应位置的数值若不存在就填 NaN。很多人误以为它能自动向前填充或插值其实不能。 稿定AI 拥有线稿上色优化、图片重绘、人物姿势检测、涂鸦完善等功能