文章目录(Table of Contents)
前言
这一篇是讲关于应用回归分析里的自相关检验,这里是使用mathematica来进行讲解,关于spss的版本可以查看下面的链接:
- https://mathpretty.com/8784.html
我们还是从例题来讲解,看一下下面的这个例题。
例题解析
题目描述:
石油产量数据:表中数据是1880-1988年间以百万桶计的世界原油年产量,数据取自Moore和McCabe。采用ln(barrels)对年份做线性回归拟合。
- 计算Durbin-Watson统计量,从中你能得关于相关性存在的什么结论?
- 比较游程数与它们的期望值和标准差,从中你能得到关于相关性存在的什么结论?
数据如下:
- {{year, barrels}:
- {1880., 30.}, {1890., 77.}, {1900., 149.}, {1905., 215.}, {1910., 328.}, {1915., 432.}, {1920., 689.}, {1925., 1069.}, {1930., 1412.}, {1935., 1655.}, {1940., 2150.}, {1945., 2595.}, {1950., 3803.}, {1955., 5626.}, {1960., 7674.}, {1962., 8882.}, {1964., 10310.}, {1966., 12016.}, {1968., 14104.}, {1970., 16690.}, {1972., 18584.}, {1974., 20389.}, {1976., 20188.}, {1978., 21922.}, {1980., 21722.}, {1982., 19411.}, {1984., 19837.}, {1986., 20246.}, {1988., 21338.}}
下面是使用mathematica来解决自相关检验的问题。
第一问解答
首先计算D-W统计量:
关于D-W统计量(杜宾-瓦特森统计量),是用来检测以用来检测回归分析中的残差项是否存在自我相关。
其实就是查看回归方程的DurbinWatsonD属性,在上面就是ls["DurbinWatsonD"]
从中可以看出d=0.194536(关于D-W统计量的临界值可以查表进行获取)
下面我们对上面的内容进行分析:
检验假设:
从上面的计算,我们有:d = 0.194536
当 n = 29, p = 1 时,查表可得:
于是可以得到:
所以应该拒绝原假设,也就是自相关存在。
第二问解答
关于游程数的定义:残差穿过x-轴的次数 + 1,可以看一下下面这张图:
我们可以直接看上面的残差图,得到游程数runs=5
下面计算期望值与标准差并分析:
从图中可以数出:
- 正的个数为:n_1 = 19
- 负的个数为:n_2 = 10
所以我们可以计算得:
所以我们有:
于是我们发现:
所以我们的结论是:自相关存在(可以看到和D-W统计量的结论是一样的)。
一些其他的
最后把上面的过程写了一个函数,放在下面,大家可以直接调用。
- RunLength[cancha_List] :=
- Block[{n1, n2, u, v2, youcheng, ycn},
- n1 = Length[Select[cancha, # >= 0 &]];
- n2 = Length[Select[cancha, # < 0 &]];
- u = (2.*n1*n2/(n1 + n2)) + 1;
- v2 = (2.*n1*n2*(2*n1*n2 - n1 - n2))/((n1 + n2)^2*(n1 + n2 - 1));
- youcheng = {};
- For[i = 1, i <= Length[cancha], i++,
- If[cancha[[i]] >= 0, youcheng = AppendTo[youcheng, 1],
- youcheng = AppendTo[youcheng, -1]];];
- ycn = 0;
- For[i = 1, i <= Length[youcheng] - 1, i++,
- If[youcheng[[i + 1]] - youcheng[[i]] != 0, ycn = ycn + 1];];
- Grid[{{"期望", " | ", "方差", " | ", "游程数"}, {u, " | ", v2, " | ",
- ycn + 1}}, Frame -> True]]
- 微信公众号
- 关注微信公众号
- QQ群
- 我们的QQ群号
评论