Matlab:如何为AR模型计算调整后的R平方

时间:2019-06-07 14:46:54

标签: matlab arima

我遇到了一个计量经济学问题,必须在Matlab中计算AR(15)时间序列。在要求我计算BIC和AIC值之后,教授还请求了调整后的R平方统计量,但是在这种情况下,我不知道如何计算它。

我已经通过命令'arima('ARlags',1:15)'实现了AR模型,并使用命令'estimate'获得了常数,15个AR系数和方差的值。 我知道如何计算调整后的R平方:我必须计算残差平方和与平方和的总和,然后除以自由度。但是,在这种情况下,像任何统计问题一样,我没有响应的估计值,因此我不知道如何计算残差平方和,然后计算调整后的R平方。 预先感谢您的帮助

parcorr(zero_rate) AR1=arima('ARlags', 1:15); [est_AR1,EstParamCov1,logL1]=estimate(AR1,zero_rate); [AIC1, BIC1]=aicbic(logL1,17,35);

1 个答案:

答案 0 :(得分:0)

假设您使用的是arima class ,则可以使用infer方法获取残差,然后进行点积以获取平方和

E = infer(Mdl,Y)
Ssquares = dot(E,E) 

要获得平方的总和,您可以

Stotal = dot(Y-mean(Y),Y-mean(Y))

那么R的平方就是

Rsq = 1- Ssquares/Stotal

调整后的R平方

Rsqadj - 1- (1-Rsq)*(n-1)/(n-p-1) (which is = 1-Ssquares/Stotal*(n-1)/(n-p-1))

其中n是您的人口规模,p是非截距系数的数量(在您的情况下,我认为这是15)。