时间序列

时间序列:
1.时间戳(timestamp)
2.固定周期(period)
3.时间间隔(interval)

date_range:
H:小时
D:天
M:月

rng = pd.date_range('2016/07/01',periods=10,freq='D') #创建一个时间序列,从2016/07/01开始的10天。periods是周期数,freq即周期的长度。 freq可以加数字,如3D表示周期长度为3天

date_range也可以作为小标建立Series rng = pd.Series(np.random.randn(20),index = pd.date_range(pd.datetime(2016,1,1),periods=20)) #如果没有传入freq,默认为’D’

若知道起始时间和终止时间,可以创建一个时间序列。如 rng = pd.date_range('2016/01/01','2017/01/01',freq='M')

过滤,.truncate() rng = pd.Series(np.random.randn(20),index=pd.date_range('2018/01/01',periods=20,freq='M')) rng = rng.truncate(before='2018/05/05') #其中,before是过滤该日期之前的日期,after是过滤该日期之后的日期

时间戳的加法:rng = pd.Period('2016-01-01') + pd.Timedelta('1 day') 会变成2016-01-02

数据重采样:
降采样:
rng = pd.date_range('1/1/2011',periods=90,freq='D') ; ts = pd.Series(np.random.randn(len(rng)),index=rng) ; ts = ts.resample('M').sum()
升采样:
1。 ts = ts.resample('D').ffill(1) 按照前一个值填充,也可以是多个
2。 ts = ts.resample('D').dfill(1) 按后一个填充
3. ts = ts.resample('D').interpolate('linear) 按照有的数字之间连线,连线上的点来填充空缺值

滑动窗口:
rolling(window)rng = pd.date_range('1/1/2011',periods=90,freq='D') ; ts = pd.Series(np.random.randn(len(rng)),index=rng) ; r = ts.rolling(window=10) ; print(r.mean())


ARIMA模型
平稳性:均值和方差没有明显的变化,经由样本时间序列得到的拟合曲线有“惯性”
严平稳:分布不随时间的改变而改变
弱平稳:期望与相关系数(依赖性)不变。发生在某时刻t的值依赖于他的过去的信息,所以需要依赖性

差分法: 时间序列在t 于t-1 时刻的差值
自回归模型(AR):
1.描述当前值和历史值之间的关系,用变量自身的历史时间的数据对自身进行预测
2.自回归模型必须满足稳定性要求
3.p阶自回归模型公式:
在这里插入图片描述

在这里插入图片描述
自回归模型的限制:
1自回归模型是用于自身的数据进行预测
2.必须具有稳定性
3.必须具有自相关性
4.自回归只适用于预测与自身前期相关的现象

移动平均模型(MA)
1.移动平均模型关注的是自回归模型中的误差项的累加
2.q阶自回归过程
3.移动平均法能有效消除预测中的随机波动

自回归移动平均模型(ARIMA)
自回归与移动平均结合(相加)
ARIMA(p,d,q) 全称为差分自回归移动平均模型
q为移动平均数,p为自回归项,d为差分次数
原理:将非平稳时间序列转化为平稳时间序列然后将因变量仅对它的滞后值以及随机误差项的现值和滞后值进行回归所建立的模型

自相关函数(ACF)
有序的随机变量与其自身相比较
自相关函数反映了同一序列在不同时序的取值之间的关系

偏自相关函数(PACF)
对于一个平稳AR模型,求出滞后k自相关系数p(k)时,x(t)与x(t-k)之间的单纯的相关关系
x(t)还会收到中间(k-1)随机变量x(t-1),x(t-2)…x(t-k+1)的影响,而这k-1个随机变量又都和x(t-k)具有相关关系
所以自相关系数p(k)里实际掺杂了其他变量对x(t),x(t-k)的影响

剔除了中间k-1个随机变量的干扰后,x(t-k)对x(t)的影响的相关程度

ADF 还包含了其他变量的影响,而偏自相关系数PACF是严格的这两个变量之间的相关性

模型ACFPACF
AR ( p )衰减趋向于0p阶后截尾
MA(q)q阶后截尾衰减趋于0
ARM A(p,q )q阶后区域0(几何或震荡型)p阶后区域0(几何或震荡型)

ARIMA建模流程:
1.将序列平稳(差分法确认d)
2.p和q阶确认ACF和PACF
3.ARIMA(p,d,q)

模型选择AIC和BIC,选择更简单的模型
AIC:赤池信息准则: AIC = 2k - 2ln(L)
BIC:贝叶斯信息准则:BIC = kln(n) - 2ln(L)
k为模型参数个数,n为样本数量,L为似然函数

重采样 pd.resample
滑动窗口 .rolling(window=10)

tsfresh 特征提取

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SARIMA(Seasonal Autoregressive Integrated Moving Average)是一种用于时间序列分析和预测的统计模型。它是ARIMA模型的扩展,专门用于处理具有季节性变化的时间序列数据。 SARIMA模型由四个部分组成:季节性自回归(SAR)、季节性差分(I)、季节性移动平均(SMA)和非季节性移动平均(MA)。下面是对每个部分的简要介绍: 1. 季节性自回归(SAR):SAR部分是指在模型中考虑了时间序列在过去时刻的季节性自相关关系。它表示当前时刻的值与过去时刻的值之间的关系。 2. 季节性差分(I):I部分是指对时间序列进行季节性差分,以消除季节性变化。差分操作可以将非平稳的时间序列转化为平稳的时间序列。 3. 季节性移动平均(SMA):SMA部分是指在模型中考虑了时间序列在过去时刻的季节性移动平均关系。它表示当前时刻的值与过去时刻的移动平均值之间的关系。 4. 非季节性移动平均(MA):MA部分是指在模型中考虑了时间序列在过去时刻的非季节性移动平均关系。它表示当前时刻的值与过去时刻的移动平均值之间的关系。 SARIMA模型的参数包括季节性自回归阶数(p)、季节性差分阶数(d)、季节性移动平均阶数(q)、非季节性移动平均阶数(P)、非季节性差分阶数(D)和非季节性移动平均阶数(Q)。通过对时间序列数据进行模型拟合和参数估计,可以使用SARIMA模型进行时间序列的预测和分析。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值