指数平滑的 MATLAB 实现,用起来还挺顺手的。项目里主打文件是expsmooth.m
,算法逻辑清晰,参数配置也比较灵活。想搞定时间序列的短期波动,这工具真挺合适。
简单指数平滑的方式,就是对最近的数据点多给点权重,远一点的少一点,适合没啥趋势的场景。要是数据有趋势变化,用Holt 线性趋势模型,还能顺带预测未来走势。季节性数据?那就用Holt-Winters,趋势、季节性一起搞定。
你传进去一组时间序列数据,再给个平滑因子、趋势因子,甚至季节因子,输出就是平滑后的数据或者预测值。代码结构不复杂,改参数、加功能都比较方便。打开expsmooth.m
看下,快就能上手。
授权信息写在license.txt
里,基本开源用着没啥大问题,但如果打算商用,最好还是认真看一遍。有做销售预测、库存管理、经济走势的需求,这个脚本用来做前期数据,效率还不错。
如果你正好用 MATLAB 做时间序列,可以顺手下一个试试。想了解其他平滑方法,还可以看看指数平滑技术时间序列的应用或者PowerSmooth 平滑工具。