Python中LAI时间序列的Savitzky-Golay滤波平滑问题及解决
解决LAI时间序列平滑效果不佳问题:数据排序的关键作用
我是Python新手,正在处理一年期LAI(叶面积指数)时间序列统计数据(包含count、min、max、std字段),目标是对每个segment_id(样区)的最大LAI均值执行线性插值结合Savitzky-Golay滤波平滑。但反复调整窗口大小、多项式阶数等参数后,平滑效果始终不理想。
经排查发现,问题核心是数据未按时间顺序排序——时间序列类的插值、滤波算法依赖有序的时间轴,无序数据会导致算法逻辑混乱,输出不符合预期的结果。
修改以下代码,对日期和均值数据按索引排序后,平滑效果恢复正常:
x = df_filtered['date'].sort_index() y = df_filtered['mean'].sort_index()/1000
效果对比
- 排序前平滑效果:
- 排序后平滑效果:
内容的提问来源于stack exchange,提问作者Abdoulaye Guindo
相关产品推荐
相关产品推荐

