我正在尝试使用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模型估计的残差,对另一种方式的建议也会有所帮助。
答案 0 :(得分:1)
查看代码(来自http://jsfiddle.net/srqnuyp7/2/),问题可能在于代字号输出。如果您使用的旧版MATLAB不支持〜,您可能会收到您提到的错误。
有一种简单的方法可以检查这一点。在命令行试用:
[~,idx] = min(1:10)
如果这导致错误,您使用的是不支持〜的MATLAB版本。如果要使用该特定代码,则必须升级MATLAB,或者编辑所有文件,以便将代字号的示例替换为某种虚拟变量,例如:
[garbage,idx] = min(1:10)
答案 1 :(得分:-1)
如错误消息所述,问题出在armaxfilter.m中。您应该打开该文件,并查看在指定行写入的代码。我相信你会在那里看到一个错误。