如何解决“使用HAC(行485)时出错-索引超出数组范围”

时间:2019-01-09 09:16:00

标签: matlab regression autocorrelation

使用HAC为我的回归模型获取经异质性校正的权重时,该函数在hac.m的第485行崩溃:b = getBW(V,weights,model,iFlag);

我使用的回归模型有17个变量(1个常数+ 16个回归器)。 此getBW函数在hac.m的第872行开始的循环中失败,因为该循环的第二次迭代后ARfit.AR {1}为空,我不知道为什么。 我只是使用:

EstCov = hac(X,y)

其中X = [224x17]y = [224x1]

尝试类似的事情:

DataTable = array2table([X,y],'VariableNames',{'X1','X2','X3','X4','X5','X6','X7','X8','X9','X10','X11','X12','X13','X14','X15','X16','X17','Y'});
OLSModel = fitlm(DataTable);
[EstCov,se,coeff]=hac(OLSModel,'display','full');

由于相同的原因在同一时刻也失败。 hac(X,y)为什么不起作用?我不断得到

  

使用hac时出错(第485行)   索引超出数组范围。

0 个答案:

没有答案
相关问题