Matlab中有任何功能可以创建固定序列吗?

时间:2019-07-07 03:22:37

标签: matlab time-series generate-series

matlab中有创建固定序列的函数吗?还是某个特定的地方我可以获得这种系列?我正在实现一种方法,但我认为缺少平稳序列是一个问题。

1 个答案:

答案 0 :(得分:1)

这里没有太多内容,请尝试更具体地说明。 “方法”和“系列” ...一个常见的错误是在非平稳过程中使用OLS回归,在这种情况下,结果可能是虚假的。为避免这种情况,当怀疑某个变量是非平稳的时,对该变量的转换有时会破坏该非平稳性。例如,如果您将两个连续的值彼此相减(例如,使用diff函数),则具有单位根(非平稳)的自相关AR(1)流程将产生(平稳)创新。

为了更直接地回答您的问题(但可能用处不大),任何在不改变时间分布的情况下生成随机数的Matlab函数都将生成“平稳过程”…… plot(randn(1000,1))显示了一个代表纯粹创新的“过程”。如果这些创新是在具有单位根(即X(t + 1)= X(t)+ u)的AR(1)中进行的,我们将得到类似的结果:

AR1 = cumsum(u);
innov=diff(AR1);
plot([AR1(2:end),innov])

如您所见,AR1进程是非平稳的,因为它具有单位根。琐碎地讲,x实际上是创新,但是使用diff对其进行“逆向工程”仅表明,在这种情况下,您可以从非平稳序列中恢复平稳的东西。

最后,寻找非平稳性的常见测试是增强的Dickey Fuller测试(单位根测试),该测试在Matlab中实现:https://www.mathworks.com/help/econ/adftest.html