MATLAB中ARMA估算的残差

时间:2015-04-23 11:05:22

标签: matlab regression autoregressive-models

我正在尝试使用MFE工具箱中的armaxfilter函数,但是我收到错误:

>> parameters = armaxfilter(y,1,1,1); ??? Error: File: armaxfilter.m Line: 477 Column: 21 Expression or statement is incorrect--possibly unbalanced (, {, or [.

显然我的代码是正确的,从帮助中的示例可以看出:   例:     要符合标准ARMA(1,1),请使用

parameters = armaxfilter(y,1,1,1)

有什么问题吗? 在任何情况下,我的目标是从时间序列中获得ARMA模型估计的残差,对另一种方式的建议也会有所帮助。

2 个答案:

答案 0 :(得分:1)

查看代码(来自http://jsfiddle.net/srqnuyp7/2/),问题可能在于代字号输出。如果您使用的旧版MATLAB不支持〜,您可能会收到您提到的错误。

有一种简单的方法可以检查这一点。在命令行试用:

[~,idx] = min(1:10)

如果这导致错误,您使用的是不支持〜的MATLAB版本。如果要使用该特定代码,则必须升级MATLAB,或者编辑所有文件,以便将代字号的示例替换为某种虚拟变量,例如:

[garbage,idx] = min(1:10)

答案 1 :(得分:-1)

如错误消息所述,问题出在armaxfilter.m中。您应该打开该文件,并查看在指定行写入的代码。我相信你会在那里看到一个错误。