主要内容

趋势分解

查找数据趋势

    描述

    实例

    LT=趋势分解(A.)使用奇异谱分析(SSA)发现数据向量中的趋势,该分析假设数据的加性分解A=LT+ST+R.在这种分解,LT是数据中的长期趋势,装货单这种趋势是季节性的还是周期性的R其余部分。LT向量的长度是否与A.

    当季节趋势的周期未知时,SSA是一种有用的算法。SSA算法假设输入数据是均匀间隔的。

    LT=趋势分解(A.“ssa”,滞后)还使用SSA算法来发现A.并另外指定一个滞后值,该滞后值决定了计算奇异值分解的矩阵的大小,如[1].更大的值滞后通常会导致更多的趋势分离。

    的价值滞后必须是区间[3]中的标量,N/ 2),N长度是多少A..如果季节趋势的周期已知,则指定滞后作为时期的倍数。

    LT=趋势分解(___NumSeasonal =N)使用前面语法中的任何输入参数组合,指定要返回的季节性趋势的数量。

    LT=趋势分解(A.“stl”,时期)发现A.使用STL算法,这是一个基于局部加权回归的可加性分解,如[2]. STL需要一个季节趋势周期。当数据只有一个季节性趋势时,请指定时期作为标量值。对于多个季节趋势,指定时期作为一个向量,其元素是每个季节趋势的周期。

    STL算法假定输入数据的间隔是均匀的。

    实例

    [LT,装货单,R]=趋势分解(___)也返回季节趋势和分解的剩余。的长度装货单R匹配输入向量的长度A.什么时候A.包含多个季节趋势,装货单是一个矩阵,其列包含每个季节的趋势。

    D=趋势分解(T)使用SSA在数据的表或时间表中查找趋势。趋势分解分别对每个表变量进行操作。D是一个表或时间表,其中的变量包含长期趋势、季节趋势和每个变量的余数。趋势分解返回多个季节趋势作为一个变量D,其专栏包含每个季节的趋势。

    D=趋势分解(T“ssa”,滞后)为表格或时间表输入指定SSA滞后值,并将滞后应用于所有表格变量。

    D=趋势分解(T,___NumSeasonal =N)指定对表格或时间表数据使用SSA时的季节趋势数,并将该数应用于每个表格变量。

    实例

    D=趋势分解(T“stl”,时期)使用STL查找具有指定季节性趋势周期的趋势。趋势分解将句点应用于每个表变量。

    例子

    全部折叠

    使用奇异谱分析计算数据向量的长期趋势。

    创建数据向量A.它包含长期趋势、季节趋势和噪音成分。

    t = (0:20) ';A = 3*sin(t) + t + 0.1*rand(21,1);

    计算长期趋势。绘制数据和长期趋势图。

    LT=趋势分解(A);绘图(t,A,t,LT)图例(“数据”,“长期”)

    图中包含一个Axis对象。Axis对象包含两个line类型的对象。这些对象表示长期数据。

    使用奇异谱分析将数据向量分解为长期趋势、两个季节趋势和剩余部分。

    创建数据向量A.这包括一个长期趋势、两个不同时期的季节性趋势和一个噪声分量。

    t=(1:200);趋势=0.001*(t-100)。^2;周期1=20;周期2=30;季节1=2*sin(2*pi*t/period1);季节2=0.75*sin(2*pi*t/period2);噪音=2*(rand(200,1)-0.5;A=趋势+季节1+季节2+噪音;

    使用SSA算法分解数据。绘制数据、趋势和剩余部分。

    [LT,ST,R]=趋势分解(A);绘图([A LT,ST,R]);图例(“数据”,“长期”,“季节性1”,“季节性2”,“余数”)

    图中包含一个Axis对象。Axis对象包含5个line类型的对象。这些对象表示数据、长期、季节1、季节2和剩余。

    使用STL算法将表中的数据分解为其长期趋势、两个季节趋势和余数。

    创建一个表T的变量数据包含一个长期趋势,两个不同时期的季节性趋势,和一个噪声成分。

    t=(1:200);趋势=0.001*(t-100)。^2;周期1=20;周期2=30;季节1=2*sin(2*pi*t/period1);季节2=0.75*sin(2*pi*t/period2);噪音=2*(rand(200,1)-0.5);数据=趋势+季节1+季节2+噪音;t=表格(数据)
    T=200×1台数据______ 11.204 11.896 10.722 12.502 11.939 10.646 10.57 10.479 10.527 9.6793 7.1756 7.9505 7.1704 5.6206 5.8256 4.2817⋮

    使用STL算法分解数据。绘制数据、趋势和余数。

    D=趋势分解(T,“stl”, 20 30);D = addvars (D、数据);stackedplot (D)包含(“t”)

    Figure包含一个类型为stackedplot的对象。

    输入参数

    全部折叠

    输入数组,指定为数字向量。

    数据类型:仅有一个的|

    SSA的滞后值,指定为区间[3]内的数值标量,N/ 2),N是输入数据的长度。值越大滞后通常提供更多的趋势分离。如果周期已知,则指定滞后作为时期的倍数。

    SSA的季节趋势数,指定为大于0的整数。

    STL的周期,指定为数字标量,数字向量,期间标量,或期间向量。当数据有一个季节性趋势时,指定时期作为一个标量。当数据有多个季节性趋势时,指定时期作为一个向量,其元素是每个季节趋势的周期。时期可以有类型期间仅供时间表输入数据。

    表格输入数据,指定为表格或时间表。趋势分解分别对每个表变量进行操作。时间表必须均匀间隔。

    输出参数

    全部折叠

    长期趋势,返回为与输入向量长度相同的向量。

    季节趋势,作为向量或矩阵返回。装货单当数据有一个季节性趋势时为向量,当数据有多个季节性趋势时为矩阵,每列对应一个季节性趋势。中的行数装货单匹配输入向量的长度。

    余数,作为与输入向量长度相同的向量返回。

    趋势,当输入数据是表或时间表时,以表或时间表的形式返回。D包含长期趋势、季节性趋势和分解后的其余部分作为单独的表变量。对于多个季节趋势,得到的变量的列数D与季节性趋势的数量相匹配。

    参考文献

    Golyandina, Nina和Anatoly Zhigljavsky。时间序列的奇异谱分析.SpringerBriefs统计。柏林,海德堡:施普林格柏林,海德堡,2013。https://doi.org/10.1007/978 - 3 - 642 - 34913 - 3。

    克利夫兰,r.b., W.S.克利夫兰,J.E.麦克雷,和I. Terpenning。STL:基于黄土的季节趋势分解方法官方统计杂志6 (1990): 3–73.

    介绍了R2021b