PySpark时间序列数据统计描述,分布特性与内部特性
本文为销量预测第 2篇: PySpark时间序列数据统计描述,分布特性与内部特性
第 1篇: PySpark与DataFrame简介
第 3篇: 缺失值填充与异常值处理
第 4篇: 时间序列特征工程
第 5篇: 特征选择
第 6篇: 简单预测模型
第 7篇: 线性回归与广义线性模型
第 8篇: 机器学习调参方法
第 9篇: 销量预测建模中常用的损失函数与模型评估指标
PySpark时序数据描述
为更好的洞察和处理大规模时序数据的特性,本文针对大规模时序数据,从基本统计描述,分布情况,序列内部特征三方面,提供Spark和与借助numpy,scipy,statsmodels封装的成Spark.UDF函数进行处理的脚本与理解讲解。时间序列的描述不仅帮助建模者了解序列本身的规律,也是构建特征工程的一部分,亦可作为分类分层建模的依据。
一、基本统计特性
基本统计特性包括长度,均值,间断时长,标准差等,用于对序列有大致了解。
1.序列长度
针对时序数据,一般首先会关注序列的长度 n n n,较短序列意味着数据的潜在可变性无法判断,随机成分较大,无法通过该序列历史数据揭示出规律性。从理论角度来说,样本的数量要比预测模型中参数个数更多。从经典时间序列分解理论出发,序列短则无法准确的推断其趋势、季节波动,对ARIMA等模型,将导致其自相关系数,平稳性检验等变得相对不可靠,机器学习模型,同样需要较大的样本量来避免过拟合风险。针对短序列,应该选择使用需要参数更少更简单的模型,比如移动平均,规则模型,线性回归,同时减低模型复杂。如果待预测问题属于一个较大粒度,比如门店-月销售额的短序列预测,相比较在门店-天-sku预测上更容易预测,因为潜在可变性较小,样本量(序列长度)问题相对没有那么突出。
n = [ t 1 , t 2 , t 3 , . . . , t n ] n=[t_{1},t_{2},t_{3},...,t_{n}] n=[t1,t2,t3,...,tn]
2.销售时长
销售时长,描述序列发生销售的时间跨度,销售时长较短的序列表明是最近上线的新品。
S a l e s D a y s = m a x ( T i ) − m i n ( T i ) T i : 销 售 时 间 SalesDays=max(T_{i})-min(T_{i})\\ T_{i}:销售时间 SalesDays=max(Ti)−min(Ti)Ti:销售时间
3.间断时长
中断时长,用来度量序列完整性,中断的时间点越少,序列越完整。
I n t e r m D a y s = 1 + m a x ( T i ) − m i n ( T i ) − n T i : 销 售 时 间 , n : 序 列 长 度 IntermDays=1+max(T_{i})-min(T_{i})-n\\ T_{i}:销售时间,n:序列长度 IntermDays=1+max(Ti)−min(Ti)−nTi:销售时间,n:序列长度
4.缺失值占比
通过比例的方式度量销售中断(缺失)的严重程度
M i s s i n g R a t i o = n 1 + m a x ( T i ) − m i n ( T i ) T i : 销 售 时 间 , n : 序 列 长 度 MissingRatio=\frac{n}{1+max(T_{i})-min(T_{i})}\\ T_{i}:销售时间,n:序列长度 MissingRatio=1+max(Ti)−min(Ti)nTi:销售时间,n:序列长度
5.均值(mean)
序列的均值描述该序列发生销售大致量级。
x ˉ = ∑ i = 1 n x i n \bar{x}=\frac{\sum_{i=1}^{n} x_{i}}{n} x

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



