关联规则(初识)

关联规则

  • 关联规则分析是数据挖掘中最活跃的方法之一,目的是在一个数据集中找出各项之间的关联关系,而这种关系并没有在数据中直接表示出来
  • 算法名称
    算法描述
    Apriori 关联规则最常用也是经典的挖掘频繁项集的算法,其核心思想是通过连接产生候选项及其支持度然后通过剪枝生成频繁项集
    FP-Tree 针对Apriori算法固有的多次扫描事物数据集的缺陷,提出的不产生候选项频繁项集的方法.Apriori和FP-Tree都是寻找频繁项集的算法
    Eclat算法 Eclat算法是一种深度优先级算法,采用垂直数据表示形式,在概念格理论的基础上利用基于前缀的等价关系将搜索空间划分为较小的子空间
    灰色关联法

    分析和确定各因素之间的影响程度或是若干个子因素(子序列)对主因素(母序列)的贡献度而进行的一种分析方法.

  • Apriori算法
    • Apriori算法是最经典的挖掘频繁项集的算法,第一次实现了在大数据集上可行的关联规则提取,其核心思想是通过连接产生候选项与其支持度,然后通过剪枝生成频繁项集
    • 关联规则和频繁项集
      • 关联规则的一般形式
        • 项集A, B同时发生的概率称为关联规则的支持度(也称相对支持度)
          • support(A==>B) = P(A υ B)
        • 项集A发生,则项集B发生的概率为关联规则的置信度
          • Confidence(A==>B) = P(A υ B)
      • 最小支持度和最小置信度
        • 最小支持度是用户或专家定义的衡量支持度的一个阈值,表示项目集在统计意义上的最低重要性最小置信度是用户或专家定义的衡量置信度的一个阈值,表示关联规则的最低可靠性.同时满足最小支持度阈值和最小置信度阈值的规则称作强规则
      • 项集
        • 项集是项的集合.包含K个项集称为k项集,如集合(牛奶, 麦片, 糖 B )是一个3项集.项集的出现频率是所有包含项集的事务计数,走称做绝对支持度或支持度计数.如果项集I的相对支持度满足预定义的最小支持度阈值,则I是频繁项集.频繁项集K项集通常记作K.
      • 支持度计数
        • 项集A的支持度是事务数据集中包含项集A的事务的个数,简称为项集的频率或计数
        • 已知项集的支持度计数,则规则A ==> B的支持度和置信度很容易从所有的事务计数,项集A和项集A U B的支持度计数推出
          • Support(A ==> B) = A,B同时发生的事务的个数 / 所有事务个数 = Support_count(A Ω B) / Total_count(A)
          • Confidence( A == > B) = P( A | B) = Support_count(A Ω B) / Support_count(A)
        • 也就是说,一旦得到所有事务个数,A,B和AΩB的支持度计数,就可以导出对应的关联规则A == > B和B == > A,并可以检查该规则是否是强规则
      • # -*- coding:utf-8 -*-
        
        import sys
        
        reload(sys)
        sys.setdefaultencoding("utf-8")
        
        """
        使用Apriori算法挖掘菜品订单关联规则
        """
        from __future__ import print_function
        from apriori import find_common_type
        import pandas as pd
        
        data = pd.read_csv("sales.csv", header=None, sep=",")
        
        print(u'\n转换原始数据至0-1矩阵...')
        ct = lambda x: pd.Series(1, index=x[pd.notnull(x)])  # 转换矩阵0-1矩阵的过度函数
        b = map(ct, data.as_matrix())  # 用map方式执行
        data = pd.DataFrame(list(b)).fillna(0)  # 实现矩阵转换,空值用0填充
        print(u'\转换完毕.')
        del b
        
        support = 0.2 # 最小支持度
        confidence = 0.5 # 最小置信度
        ms = '--' # 连接符,默认'--',用来区分不同元素, 如 A--B. 需要保证原始表格中不含有该字符
        find_common_type(data, support, confidence, ms).to_csv("sales_1.csv")
      • 其中,e–a表示e能发生能够推出a发生,置信度为100%,支持度为30%; b - c - a表示b,c能同时能够推出a发生,置信度为60%,支持度为30%,搜索出来的关联规则不一定具有实际意义,需要根据问题背景筛选出适当的有意义的规则,并赋予合理的解释
      • Apriori算法使用候选产生频繁项集
        • Apriori算法的主要思想是找出在于事务数据集中最大的频繁项集,在利用得到的最大的频繁项集与预先设定的最小置信度阈值生成强关联规则
        • Apriori的性质, 频繁项集的所有非空子集也必须是频繁项集.根据该性质可疑得出,向不是频繁项集I的项集中添加事务A,新的项集I U A一定也不是频繁项集
        • Apriori算法实现的两个过程如下:
          • 找出所有的频繁项集(支持度必须大于等于给定的最小支持度阈值),在这个过程中,连接步和剪枝步相互融合,最终得到最大频繁项集Lk.
            • 链接步:
              • 链接步的目的是找到K项集,对于给定的最小支持度阈值,分别对I项集选集C1,剔除小于该与阈值的项集得到1项频繁集L1;下一步有L1自身链接产生2项候选集C2,保留C2中满足约束条件的项集得到2想频繁项集,记为L2,再下一步由L2项候选集C2,保留C2中满足约束条件的2项频繁集,极为L2;再下一步由L2与L3链接产生3项候选集C3,保留C2中满足约束条件的项集得到3项频繁集,极为L3,...这样循环下去,得到最大的频繁项集 Lk
            • 剪枝步:
              • 枝步紧接着连接步,再产生选项Ck的过程中起到减小搜索空间的目的由于Ck是Lk-1与L1连接产生的,根据Apriori的性质频繁项集,所以不满足该性质的项集不会存在Ck中,该过程就是剪枝
  • 时序模式
    • 常用按时间顺序排列的一组随机变量X1,X2,X3...,Xt来表示一个随机事件的时间序列,简记为{Xt};用x1,x2,x3,...,xn或{Xt,t=1,2,3...,n}表示该随机序列的n个有序观察值,称之为序列长度为n的观察序列.
    • 时间序列算法(常用的模型)
    • 模型名称
      描述
      ARCH模型 ARCH模型能准确地模拟时间序列变量的波动性的变化,适用与序列具有异方差性并且异方差函数短期自相关
      ARIMA模型 许多非平稳序列差分后会显示出平稳序列的性质,称这个非平稳序列为差分平稳序列,对于差分平稳序列可以使用ARIMA模型进行拟合
      ARMA模型 xt = Φ0 + Φ1xt-1 + Φ2xt-2 + ...+ Φpxt-p + εt - θ1εt-1 - θ2εt-2 - ... - θqεt-q 随机变量Xt的取值xt不仅与前p期的序列值有关,还 与前前q期的然东值有关
      AR模型 xt = Φ0 + Φ1xi-1 + Φ2xi-2 + ... + Φpxt-p + εt 以前p期的序列值xt-1,xt-2, ..., +xt-p为自变量,随机变量xt的取值,xt为因变量建立线性回归模型
      GARCH模型及其衍生模型 GARCH模型称为广义ARCH模型,是ARCH模型的拓展.相比与ARCH模型,GARCH模型机器衍生模型更能反映实际序列中的长期记忆性,信息的非对称性等.
      MA模型 xt = µ+εt - θ1εt-1 - θ2εt-2-...-θpxt-q 随机变量Xt的取值xt与以前各期的序列值无关,建立xt与前q期的素鸡扰动εt-1,εt-2,...,εt-q的线性回归模型
      平滑法 平滑法常用于趋势分析和预测,利用修均技术,削弱短期随机波动对序列的影响,使序列平滑化数据所用平滑技术的不同,可具体分为移动平均法和指数平滑发
      组合模型 时间序列的变化主要受到长期趋势(T),季节变动(S).周期变动(C)和不规则变动(ε)这4个因素的影响根据序列的特点,可疑构建加法模型和乘法模型 加法模型: xt = Tt + St + Ct + εt 乘法模型: xt = Tt * St * Ct * εt
      趋势拟合法 趋势拟合法把时间作为自变量,相应的序列观察值作为因变量,建立回归模型,根据序列的特征,可具体分为线性拟合和曲线拟合
    • 时间序列的预处理
      • 拿到一个观察值序列后,首先要对它的纯随机性和平稳性进行检验,这两个重要的处理称为序列的预处理,根据检验结果可以将序列分为不同的类型,对于不同的类型,对于不同类型的序列会才去不同的分析方法
      • 对于纯随机序列,又称为白噪声序列,序列的各项之间没有任何相关关系,序列在金鑫完全无序的随机波动,可以终止对该序列的分析,白噪声序列是没有信息可提取的平稳序列
      • 对于平稳非白噪声序列,它的均值和方差是常数,现已有一套非常成熟的平稳序列的建模方法.通常是建立一个线性模型来拟合该序列的发展,借此提取该序列的有用信息.ARMA模型是最常用的平稳序列拟合模型
      • 对于非平稳序列,由于它的均值和方差不稳定,处理方法一般是将其转变为平稳序列,这样就可以应用有关平稳时间序列的分析方法,如建立ARMA模型来进行相关的研究.如果一个时间序列经差分运算后具有平稳性,则该序列为差分平稳序列,可以使用ARMA模型进行分析
    • 平稳性检验
      • 平稳时间序列的定义:对于随机变量X,可以计算其均值(数学期望), μ, 方差σ2;对于两个随机变量X和Y,可以计算X,Y的协方差cov(X,Y) = E[(X-μy)(Y-μy)]和相关系数ρ(X,Y) = cov(X,Y) / σxσy,他们度量了两个不同事件之间的相互影响, 对于时间序列{Xt, t€T},任意时刻的序列值Xt都是一个随机变量,每一个随机变量都会有有均值和方差,记Xt的均值为μt,方差为σt;任取t,s€T, 定义序列(Xt)的自协方差函数γ(t,s) = E[(Xt-μt)(Xs-μs)]和自相关系数ρ(t,s) = cov(Xt, Xs) / σtσs(特别的,γ(t,s)γ(0) = 1,ρ0 = 1),之所以称它们为自协方差和相关系数,是因为他们衡量的是同一个事件在两个不同时期(时刻t/s)之间的相关程度,形象地讲就是度量自己过去的行为对自己现在的影响
        • 如果时间序列{Xt, t€T}在某一常数附近波动且波动范围有限,即有常数均值和常数方差,并且延迟k期的序列变量的自协方差和相关系数,是因为他们衡量的是同一个事件在两个不同时期(时刻t和s)之间的相关程度,形象地讲就是度量自己过去的行为对自己现在的影响.
        • 如果时间序列{Xt,t€T},在某一种常数附近波动且波动范围有限,即有常数均值和常数方差,并且延迟k期的序列变量的自协方差和自相关系数是相等的或者说延迟k期的序列变量之间的影响程度是一样的,则称{Xt,t€T}为平稳序列
    • 平稳性的检验.
      • 对序列的平稳性的检验有两种检验方法,一种是根据时序图和自相关图的特征做出判断的图检验,该方法操作简单,应用广泛,缺点是带有主观性;另一种是构造检验统计量进行检验的方法,目前常用方法是单位根检验
      • 时序图检验.根据平稳时间序列的均值和方差都为常数的性质,平稳序列的时序图显示该序列值始终在一个常数附近随机波动,而且波动的范围有界;如果有明显的趋势性或者周期性,那它通常不是平稳序列
      • 自相关系数.平稳序列具有短期相关性,这个性质表明对平稳序列而言通常只有近期的序列值对现时值的影响比较明显,间隔越远的过去值对现时值的影响越小,随延迟期数K的增加,平稳序列的自相关系数ρk(延迟k期)会比较快的衰减趋势趋于零,并在零附近随机波动,而非平稳序列的自相关系数衰减速度比较慢,这就是利用自相关图进行平稳性检验的标准
      • 单位根检验,单位根检验是指检验序列中是否存在单位根,如果存在单位根就是非平稳序列了
    • 纯随机性检验
      • 如果一个序列时纯随机序列,那么它的序列值之间应该没有任何关系,即满足γ(k)=0,k≠0,这是一种理论上才会出现的理想状态,实际上纯随机序列的样本自相关系数不会绝对为零,但是很接近零,并在零附近随机波动.
      • 纯随机性检验也称白噪声检验,一般是构造检验统计量来检验序列的纯随机性,常用的检验统计量有Q统计量,LB统计量,由样本个延迟期数的自相关系数可以计算得到检验统计量,让你后,计算出对应的p值,如果p值显著大于水平α,则表示该序列不能拒绝纯随机的原假设,可以停止对给序列的分析.
    • 平稳时间序列分析
      • ARMA模型的全称时自回归移动平均模型,它是目前最常用的拟合平稳序列的模型.它有可分为AR模型,MA模型和ARMA模型三大类.都可以看作多元线性回归模型.
      • AR模型:
        • 具有如下结构模型称为ρ阶自回归模型,简记AR(ρ).
          • xt = Φ0 + Φ1xt-1 + Φ2xt-2 + ... + Φpxt-p + εt
        • 即在t时刻的随机变量Xt的取值时前p期xt-1,xt-2, .., xt-p的多元线性回归,认为xt主要时受过去ρ期的序列值的影响,误差项是当期的随机干扰εt,为零均值白噪声序列
        • 统计量
          性质
          统计量
          性质
          均值 常数均值 自相关系数(ACF) 拖尾
          方差 常数方差 偏自相关系数(PACF) ρ阶截尾
      • 均值
        • 对满足平稳性条件的AR(ρ)m模型的方程,两边取期望,得:
          • E(xt) = E(Φ0 + Φ1xt-1 + Φ2xt-2 + ... + Φpxt-p + εt)
        • 已知E(xt) = μ, E(εt) = 0, 所以μ = Φ0 + Φ1xt-1 + Φ2xt-2 + ... + Φρμ,
        • 推出: μ = Φ0 / 1 - Φ1 - Φ2 - ... - Φp
      • 方差:
        • 平稳AR(ρ)模型的方差有界,等于常数.
      • 自相关系数(ACF)
        • 平稳AR(ρ)模型的自相关系数pk = p(t,t-k) = cov(Xt,Xt-k) / σtσt-k呈指数的速度衰减,始终有非零取值,不会在k大于某个常数之后就恒等于零,这个性质就是平稳AR(ρ)模型自相关系数ρk具有拖尾性.
      • 偏自相关系数(PACF)
        • 对于一个平稳AR(ρ)模型,求出延迟k期自相关系数ρk时,实际上得到的并不是Xt与Xt-k之间单纯的相关关系,因为Xt同时还会受到中间k-1个随机变量Xt-1,Xt-2,...Xt-k的影响,所以自相关系数Pk里实际上掺杂了其他变量对Xt与Xt-k的相关影响,为了单纯地测试度Xt-k对Xt的影响,引进偏自相关系数的概念.
        • 可以证明平稳AR(ρ)模型的偏自相关系数具有ρ阶截尾性.这个性质连同前面的自相关系数的拖尾性AR(ρ)模型重要的识别依据
    • MA模型
      • 具有如下结构的模型称为q阶自回归模型,简记MA(q)
        • xt = μ + εt - θ1ε1-1 - θ2εt-2 - ... - θqεt-q
      • 即在t时刻的随机变量Xt的取值xt时前q期的随机扰动εt-1, εt-2, .. , εt-q的多元线性函数,误差项时当期的随机干扰εt,为零均值白噪声序列,μ是序列{Xt}的均值,认为xt主要是受获取q期的误差项的影响.
      • 统计量
        性质
        统计量
        性质
        均值 常数均值 自相关系数 q阶截尾
        方差 常数方差 偏自相关系数 拖尾
      • ARMA模型
        • 具有如下结构的模型称为自回归移动平均模型,简记ARMA(p,q)
          • xt = Φ0 + Φ1xt-1 + ...+ Φpxt-p + εt - Φ0 - Φ1xt-1 - ...- Φpxt-p
        • 即在t时刻的随机变量Xt的取值Xt是前p期xt-1,xt-2, ... ,xt-p和前q期εt-1, εt-2, ..., εt-q的多元线性函数,误差项是当期的随机干扰εt,为零均值白噪声序列,认为xt主要是受过p期的序列值和过去q期的误差项的共同影响.
        • 特别的,当q = 0 时,是AR(p)模型;当p = 0 时,是MA(q)模型
        • 平稳ARMA模型(p,q)的性质如下:
        • 统计量
          性质
          统计量
          性质
          方差 常数方差 偏自相关系数(PACF) 拖尾
          均值 常数均值 自相关系数(ACF) 拖尾
      • 平稳时间序列建模
        • 某个时间序列精工预处理,被判定为平稳非白噪声序列,就可以利用ARMA模型进行建模.计算出平稳非白噪声序列{Xt}的自相关系数和偏自相关系数,再由AP(p)模型,MA(q)模型和ARMA(p,q)模型的自相关似乎和偏自相关系数的性质,选择合适的模型.平稳时间序列建模步骤如下:
          • 计算非平稳白噪声序列的自相关系数(ACF)和偏自相关系数(PACF).
          • ARMA模型识别,也称为模型定阶,由AR(P)阶模型,MA(q)和ARMA(p,q)的自相关系数和偏自相关系数的性质.选择合适的模型,识别的原则表如下:
          • 模型
            自相关系数(ACF)
            偏自相关系数(PACF)
            AR(p) 拖尾 p阶截尾
            ARMA(p,q) p阶拖尾 q阶拖尾
            MA(q) q阶截尾 拖尾
          • 估计模型中未知参数的值进行参数进行检验.
          • 模型检验
          • 模型优化
          • 模型应用:进行短期预测.
      • 非平稳时间序列分析
        • 前面介绍了对平稳时间序列进行分析的方法.实际上,在自然界中绝大部分序列都是非平稳的.因而对非平稳序列的分析更普遍,更重要,创造出来的分析方法也更多.
        • 对于非平稳时间序列的分析方法可以分为确定性因素分解的时序分析和随机时序分析两大类
        • 确定性因素分解的方法把所有序列的变化够归结为4个因素(长期趋势,季节变动,循环变动和随机波动)的综合影响,其中长期趋势和季节变动的规律性信息通常比较容易提取,而由随机因素导致的波动则非常难确定和分析,对随机信息浪费严重,会导致模型拟合精度不够理想.
        • 随机时序分析的发展就是为了弥补确定性因素分解方法的不足,根据时间序列的不同特点,随机时序分析可以建立的模型有ARIMA模型,残差自回归模型,季节模型,异方差模型等.
        • 差分运算
          • 相距一期的两个序列值之间的剪发运算称为1阶差分运算
        • k步差分
          • 相距k期的两个序列值之间的减法运算称为k步差分运算
        • ARIMA模型
          • 差分运算具有强大的确定性信息提取能力,许多非平稳序列差分后会显示出平稳序列的性质,这时称这个非平稳序列为差分平稳序列.对差分平稳序列可以使用ARMA模型进行拟合.ARIMA模型的实质就是差分运算与ARMA模型的结合,掌握了ARMA模型的建模方法和步骤后,对序列建立ARIMA模型是比较简单的.
          • 差分序列平稳时间序列建模步骤如下图:
    • # -*- coding:utf-8 -*-
      
      import sys
      
      reload(sys)
      sys.setdefaultencoding("utf-8")
      
      """
      arima时序模型
      """
      columns = []
      import pandas as pd
      forecastnum = 5
      data = pd.read_csv("sales.csv",header=None,sep=",",
                         names=columns)
      
      # 时序图
      import matplotlib.pyplot as plt
      plt.rcParams['font.sans-serif'] = ['Simhei']  # 用来正常显示中文标签
      plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号
      data.plot()
      plt.show()
      
      # 自相关图
      from statsmodels.graphics.tsaplots import plot_acf
      plot_acf(data).show()
      
      # 平稳性检测
      from statsmodels.tsa.stattools import adfuller as ADF
      print(u'原始序列的ADF检验结果为:', ADF(data[u'销量']))
      # 返回值一次为adf,pvalue,usedlag,nobs,critical,values, icbest, regresults, resstore
      
      # 差分后的结果
      D_data = data.diff().dropna()  # 去掉空值
      D_data.columns = [u'销量差分']
      D_data.plot()  # 时序图
      plt.show()
      plot_acf(D_data).show()  # 自相关
      from statsmodels.graphics.tsaplots import plot_pacf
      plot_pacf(D_data).show()  # 偏自相关图
      print(u'差分序列的ADF检验结果为:', ADF(D_data[u'销量差分']))  # 平稳性检测
      
      # 白噪声检测
      from statsmodels.stats.diagnostic import acorr_ljungbox
      print(u'差分序列的白噪声检验结果为:', acorr_ljungbox(D_data, lags=1))  # 返回统计量和p值
      
      from statsmodels.tsa.arima_model import ARIMA
      
      # 定阶
      pamx = int(len(D_data) / 10)  # 一般阶数不超过length / 10
      qmax = int(len(D_data) / 10)  # 一般阶数不超过length / 10
      bic_matrix = []  # bic矩阵
      for p in range(pamx + 1):
          tmp = []
          for q in range(qmax + 1):
              try:  # 存在部分报错,所以用try来跳过报错
       tmp.append(ARIMA(data, (p,1,q)).fit().bic)
              except:
                  tmp.append(None)
          bic_matrix.append(tmp)
      bic_matrix = pd.DataFrame(bic_matrix)  # 从中可以找到最小值
      
      p,q = bic_matrix.stack().idxmin()  # 先用stack展平,然后用idxmin找出最小值的位置
      print(u'BIC最小值的p值和q值为: %s,%s' % (p,q))
      model = ARIMA(data, (p,1,q)).fit()  # 建立ARIMA(0,1,1)模型并训练
      model.summary2()  # 给出一份模型报告
      model.forecast(5)  # 作为5天的预期,返回预测结果,标准误差,置信区间
    • python主要时序模式算法
      • Python实现时序模式的主要库是StatsModels(当然,如果pandas能做的,就可以利用Pandas先做),算法主要是ARIMA模型,在使用该模型进行建模的时候,需要进行一系列判别操作,主要包含平稳性检验,白噪声检验,是否差分,AIC和BIC指标值,模型定阶,最后再做预测.
      • 函数名
        函数功能
        所属工具箱
        acf() 计算机相关函数 statsmodels.tsa.stattools
        acorr_ljungbox() Ljung-Box检验,检验是否为白噪声 statsmodels.stats.diagnostic
        adfuller() 对观测值序列进行单位根检验 statsmodels.tsa.stattools
        aic/bic/hqic 计算ARIMA模型的AIC/BIC/HQIC指标值 ARIMA模型对象自带的变量
        ARIMA() 创建一个ARIMA时序模型 ststamodels.tsa.arima_model
        duff() 对观测值序列进行差分计算 Pandas对象自带的方法
        forecast() 应用构建的时序模型进行预测 ARIMA模型对象自带的变量
        pacf() 计算偏相关系数 statsmodels.tsa.stattools
        plot_acf() 画自相关系数图 statsmodels.graphics.tsaplots
        plot_pacf() 画偏相关系数图 statsmodels.graphics.tsaplots
        summary()或summary2 给出一份ARIMA模型的报告 ARIMA模型对象自带的方法
      • acf()

        • 功能:计算自相关系数
        • 使用格式:
          • autocorr = acf(data,unbiased=False, nlags=40, qstat=False, fft=False, alpha=None)
          • 输入参数data为观测值序列(即为时间序列,可以是DataFrame或Series),返回参数autocorr为观测值序列子相关函数.其余为可选参数,如qstat=True时同时返回Q统计量和对应p值.
      • plot_acf()
        • 功能:画自相关系数图
        • 使用格式:
          • p = plot_acf(data)
          • 返回一个Matplotlib对象,可以用.show()方法显示图像
      • acf() / plot_acf()
        • 功能:计算偏自相关系数/画偏相关系数图
        • 使用格式:
          • 使用跟acf() / plot_acf()类似,
      • adfuller()
        • 功能:对观测值序列进行差分计算
        • 使用格式:
          • D.diff() D为Pandas的DataFrame或Series
      • arima
        • 功能:设置时序模式的建模参数,创建ARIMA模型
        • 使用格式:
          • arima = ARIMA(data, (p,1,q)).fit()
          • data参数为输入的时间序列,p,q为对应的阶,d为差分次数
      • summary() / summary2()
        • 功能:生成已有模型的报告
        • 使用格式:
          • arima.summaty() / summary2()
          • 其中,arima为已经建好的ARIMA模型,返回一份格式化的模型报告,包含模型的系数,标准差,p值,AIC和BIC等详细指标
      • aic/bic/hqic
        • 功能: 计算ARIMA模型的AIC,BIC,HQIC
        • 使用格式:
          • arima.aic/arima.bic/arima.hqic
        • 其中,arima为已经建立好的ARIMA模型,返回值是Model时序模型得到的AIC,BIC和HQIC指标值
      • forecast()
        • 功能:用得到的时序模型进行预测
        • 使用格式:
          • a,b,c = arima.forecast(num)
          • 输入参数num为要预测的天数,arima为已经建立好的ARIMA模型,a为返回的预测值,b为预测的误差,c为预测置信区间
      • acroo_ljungbox()
        • 功能:检测是否为白噪声序列
        • 使用格式:
          • acroo_ljungbox(data, lags=1)
          • 输入参数为时间序列数据,lags为滞后数,返回统计量和p值

猜你喜欢

转载自www.cnblogs.com/ljc-0923/p/11788372.html