实验四-异方差性的检验与处理
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(2). (e2 , x) 或(e2 , yˆ )的图形 ((ei, yi ) 或(ei, xi ) 的图形)
1
(3) 等级相关系数法(又称 Spearman 检验) 是一种应用较广的方法,既可以用于大样本,也可与小样本。
原假设H 0:ui是等方差的;备择假设H 0:ui是异方差;
检验的三个步骤
(3)帕克(Park)检验法 1) 散点图
7
70
60
50
残差的平方
40
30
20
10
0
10
15
20
25
30
35
可 支 配 收 入 (x)
图 4.4 可支配收入与残差平方的散点图
从图 4.4 可知,可考虑拟合指数曲线。现将其取对数,即可进行一元线性拟 合。
2)回归系数与模型检验
做 ln(r^2)对 ln(x)回归,得到
6
第二步:异方差性检验
(1)图示法
4
2
0
残差r
-2
-4
-6
-8
5
10
15
20
25
30
估 计 值 yhat
(2) 等级相关系数法
图 4.3
在 y 与 x 的 OLS 回归的基础上计算出残差的绝对值,并记为 res,并计算出皮 尔曼等级相关系数 rs= 0.4860 与对应的 p 值为 0.0065<0.05(*),说明残差 r 与 x 存在系统关系,即存在异方差问题。
如果在检验过程中已经知道:Var(ui ) E(ui )2 i2 f (xji )u2
则将原模型变形为:
f
1 (xji )
yi
f
1 (x
ji
)
1
f
1 ( x ji
)
2
x1i
f
1 ( x ji
)
p
xpi
f
1 (x
ji
)
ui
在该模型中:
Var(
源自文库
1 f (xji )
%%% 绘制残差和权重的散点图 %%%%%%%
plot(stats.resid,stats.w,'o') %绘制残差和权重的散点图
xlabel('残差') ylabel('权重'
(二)实验结果与分析: 第一步::用 OLS 方法估计参数,并保留残差 (1)散点图
35
30
居 民 消 费 支 出 y(千 元 )
以写出线性回归方程为
回归系数的估计值的 95%置信区间为[0.6768,0.9415]。 对回归直线进行显著性检验,原假设和对立假设分别为
检验的 P 值为,可知在显著性水平下应拒绝原假设,可认为 y(居民消费收入) 与 x(可支配收入)的线性关系是显著的。
(3)方差分析
10
Residual Case Order Plot
25
20
15
10
5
10
15
20
25
30
35
可 支 配 收 入 x(千 元 )
5
图 4.1 可支配收入(x)居民消费支出(y)散点图 因每个可支配收入 x 的值,都有 5 个居民消费收入 y 与之对应,所以上述散点图呈现此 形状。
(2)回归模型参数估计值与显著性检验
表1
'系数的估计值' '估计值的 95%置信下限' '估计值的 95%置信上限'
表2
‘回归系数’
回归系数 t 检验的 P 值
显著性检验 P 值
=-8.4973
0.0295
0.0207
=2.9679
0.0207
从上表可以看出,得到的回归模型为 ln,常数项和线性项的 t 检验的 P 值均 小于 0.05,说明回归方程中常数项和线性项均是显著的。并且,检验的 P 值为 0.0207 小于 0.05,说明整个回归方程是显著的,表明存在异方差性。
5
Residuals
0
-5
-10
5
10
15
20
25
30
Case Number
图 4.2 原始数据对应残差图
从残差图可以看到有 2 条线段(红色虚线)与水平线 y=0 没有交点,它对应 的观测号为 22 和 29,也就是说这两组观测对应的残差的置信区间不包含 0 点, 可认为这两组观测数据为异常数据。它们分别是(30,16.7),(35,20)。
① ei yt yˆt ② 将ei取绝对值,并把|ei | 和xi按递增或递减次序排序,
计算
Spearman
系数
rs
,其中:
rs
=1-
6 n(n2 -1)
n i 1
di2
其中, n为样本容量di为|ei | 和xi的等级的差数。
③ 做等级相关系数的显著性检验。n>8 时,
当H0成立时,t
t'})
ST1.tstat.beta
% 输出参数的估计值
ST1.tstat.pval
% 输出回归系数t检验的P值
ST1.fstat.pval
% 输出回归模型显著性检验的P值
(3)加权最小二乘法(详见test4_3.m文件)
%%%%%%%%%%% 调用robustfit函数作稳健回归 %%%%%%%%%%%%
n 2 rs ~ t(n 2) 1 rs2
若t t/2(n2),认为异方差性问题不存在;
反之,若t t/2(n2), 说明| ei |与xi之间存在系统关系,异方差问题存在。
(4) 帕克(Park)检验 帕克检验常用的函数形式:
2
若在统计上是显著的,表明存在异方差性。
2、异方差性的处理方法: 加权最小二乘法
[rs,p]=corr(x,res,'type','spearman')
disp('其中rs为皮尔曼等级相关系数,p为p值');
(2)帕克(park)检验法(详见 test4_2.m 文件)
%%%%%%%%%%%%%%% 用帕克(park)检验法来检验异方差性 %%%%%%%
4
[data,head]=xlsread('test4.xlsx'); %导入数据
(1)等级相关系数法(详见 test4_1.m 文件)
%%%%%%%%%%%%%%% 用等级相关系数法来检验异方差性 %%%%%%%%
[data,head]=xlsread('test4.xlsx');
x=data(:,1); %提取第一列数据,即可支配收入x
y=data(:,2); %提取第二列数据,即居民消费支出y
plot(x,y,'k.'); % 画x和y的散点图
xlabel('可支配收入x(千元)') % 对x轴加标签
ylabel('居民消费支出y(千元)') % 对y轴加标签
%%%%%%%% 调用regres函数进行一元线性回归 %%%%%%%%%%%%
xdata=[ones(size(x,1),1),x]; %在x矩阵最左边加一列1,为线性回归做准备
河南 湖北 湖南 广东 广西 海南 重庆 四川 贵州 云南 陕西 甘肃 青海
11
20
15
26
35 30.5
12
20
16
27
35 28.7
13
20
12
28
35 31.1
14
20
13
29
35
20
15
20 19.1
30
35 29.9
若用线性模型yi 0 1xi ui ,研究不同收入家庭的消费情况,试问原
数据有无异方差性?如果存在异方差性,应如何处理?
3
解:(一)编写程序如下:
美元)
(亿元)
美元)
(亿元)
北京 219126 天津 153473 河北 96405 山西 21361 内蒙 8854 辽宁 282410 吉林 19059 黑龙江 32180 上海 546849 江苏 1056365 浙江 498055 安徽 36720 福建 259903
3663.10 2447.66 7098.56 2456.59 2150.41 6002.54 2522.62 4430.00 6250.81 12460.83 9395.00 3972.38 5232.17
[b,bint,r,rint,s]=regress(y,xdata);
yhat=xdata*b;
%计算估计值y
% 定义元胞数组,以元胞数组形式显示系数的估计值和估计值的95%置信区间
head1={'系数的估计值','估计值的95%置信下限','估计值的95%置信上限'};
[head1;num2cell([b,bint])]
估计值
head3={'判定系数','F统计量的观测值','检验的P值','误差方差的估计值'};
[head3;num2cell(s)]
%%%%%%%%%%%%% 残差分析 %%%%%%%%%%%%%%%%%% figure; rcoplot(r,rint) % 按顺序画出各组观测值对应的残差和残差的置信区间
8
1
0.9
0.8
0.7
0.6
权重
0.5
0.4
0.3
0.2
0.1
0
-10
-8
-6
-4
-2
0
2
4
残差
图 4.5 残差和权重的散点图
由图 4.5 知:权重集中在最上方的 1 附近的点比较多,说明稳健性比较好。
六、实验内容
下表是我国各地区 2003 年 FDI 和 GDP 的数据,
项目 2003 年 FDI(万 2003GDP 项目 2003 年 FDI(万 2003GDP
[data,head]=xlsread('test4.xlsx'); % 导入数据
x=data(:,1);
y=data(:,2);
% 调用robustfit函数作稳健回归,返回系数的估计值b和相关统计量stats
[b,stats]=robustfit(x,y) %调用函数作稳健回归
stats.p
% 输出模型检验的P值
xlabel('可支配收入(x)') % 对x轴加标签
ylabel('残差的平方')
%对y轴加标签
%%%%%%% 对原数据x和残差平方r^2取对数,并对log(x)和log(r^2)进行一元线性回归
ST1=regstats(log((ST.r).^2),log(x),'linear',{'r','beta','tstat','fsta
% 定义元胞数组,以元胞数组形式显示y的真实值,y的估计值,残差和残差的95%置信区间
head2={'y的真实值','y的估计值','残差','残差的95%置信下限','残差的95%置信上限
'};
[head2;num2cell([y,yhat,r,rint])]
% 定义元胞数组,以元胞数组形式显示判定系数,F统计量的观测值,检验的P值和误差方差的
%%% 画估计值yhat与残差r的散点图
figure;
plot(yhat,r,'k.')
% 画散点图
xlabel('估计值yhat') % 对x轴加标签
ylabel('残差r')
% 对y轴加标签
%%%%%%%%%%%% 调用corr函数计算皮尔曼等级相关系数
res=abs(r);
% 对残差r取绝对值
ui )
f
1 (x
ji
)
Var(ui
)
1 f (xji )
f
(
x
ji
)
2 u
2 u
即满足同方差性。于是可以用 OLS 估计其参数,得到关于参数 1, 2 ,, p 的
无偏、有效估计量。
五、实验举例
例 1、某地区居民的可支配收入 x(千元)与居民消费支出 y(千元)的数据如下:
No
综上所述,通过以上 3 种方法的检验,我们得到原数据存在异方差性。
第三步:用加权最小二乘法处理异方差性
表3
‘回归系数’
回归系数 t 检验的 P 值
=-1.6091
0.2375
=0.8870
0.0000
由表 3 得:回归方程为,由 p 值可知 x 的回归系数是显著的,常数项未显著,说明其无 实际意义。
[ -0.5390] [
[
0.8091] [
-3.7241] [ 0.6768] [
2.6460] 0.9415]
'判定系数' 'F 统计量的观测值' '检验的 P 值' '误差方差的估计值'
[ 0.8485] [
156.8387] [5.4040e-13] [
9.1316]
由输出结果看,常数项和回归系数的估计值分别为-0.539 和 0.8091,从而可
x
y
no
x
y
1
10
8
16
25 19.1
2
10
8.2
17
25 23.5
3
10
8.3
18
25 22.4
4
10
8.1
19
25 23.1
5
10
8.7
20
25 15.1
6
15 12.3
21
30 24.2
7
15
9.4
22
30 16.7
8
15 11.6
23
30
27
9
15
12
24
30
26
10
15
8.9
25
30 22.1
x=data(:,1);
y=data(:,2);
%%%%%% 调用regstats函数进行一元线性回归,linear表带有常数项的线性模型,r表残差
ST=regstats(y,x,'linear',{'yhat','r','standres'});
scatter(x,(ST.r).^2) % 画x与残差平方的散点图
实验四 异方差性的检验及处理(2 学时)
一、实验目的
(1)、掌握异方差检验的基本方法; (2)、掌握异方差的处理方法。
二、实验学时:2 学时 三、实验要求
(1)掌握用 MATLAB 软件实现异方差的检验和处理; (2)掌握异方差的检验和处理的基本步骤。
四、实验原理
1、异方差检验的常用方法 (1) 用 X-Y 的散点图进行判断
1
(3) 等级相关系数法(又称 Spearman 检验) 是一种应用较广的方法,既可以用于大样本,也可与小样本。
原假设H 0:ui是等方差的;备择假设H 0:ui是异方差;
检验的三个步骤
(3)帕克(Park)检验法 1) 散点图
7
70
60
50
残差的平方
40
30
20
10
0
10
15
20
25
30
35
可 支 配 收 入 (x)
图 4.4 可支配收入与残差平方的散点图
从图 4.4 可知,可考虑拟合指数曲线。现将其取对数,即可进行一元线性拟 合。
2)回归系数与模型检验
做 ln(r^2)对 ln(x)回归,得到
6
第二步:异方差性检验
(1)图示法
4
2
0
残差r
-2
-4
-6
-8
5
10
15
20
25
30
估 计 值 yhat
(2) 等级相关系数法
图 4.3
在 y 与 x 的 OLS 回归的基础上计算出残差的绝对值,并记为 res,并计算出皮 尔曼等级相关系数 rs= 0.4860 与对应的 p 值为 0.0065<0.05(*),说明残差 r 与 x 存在系统关系,即存在异方差问题。
如果在检验过程中已经知道:Var(ui ) E(ui )2 i2 f (xji )u2
则将原模型变形为:
f
1 (xji )
yi
f
1 (x
ji
)
1
f
1 ( x ji
)
2
x1i
f
1 ( x ji
)
p
xpi
f
1 (x
ji
)
ui
在该模型中:
Var(
源自文库
1 f (xji )
%%% 绘制残差和权重的散点图 %%%%%%%
plot(stats.resid,stats.w,'o') %绘制残差和权重的散点图
xlabel('残差') ylabel('权重'
(二)实验结果与分析: 第一步::用 OLS 方法估计参数,并保留残差 (1)散点图
35
30
居 民 消 费 支 出 y(千 元 )
以写出线性回归方程为
回归系数的估计值的 95%置信区间为[0.6768,0.9415]。 对回归直线进行显著性检验,原假设和对立假设分别为
检验的 P 值为,可知在显著性水平下应拒绝原假设,可认为 y(居民消费收入) 与 x(可支配收入)的线性关系是显著的。
(3)方差分析
10
Residual Case Order Plot
25
20
15
10
5
10
15
20
25
30
35
可 支 配 收 入 x(千 元 )
5
图 4.1 可支配收入(x)居民消费支出(y)散点图 因每个可支配收入 x 的值,都有 5 个居民消费收入 y 与之对应,所以上述散点图呈现此 形状。
(2)回归模型参数估计值与显著性检验
表1
'系数的估计值' '估计值的 95%置信下限' '估计值的 95%置信上限'
表2
‘回归系数’
回归系数 t 检验的 P 值
显著性检验 P 值
=-8.4973
0.0295
0.0207
=2.9679
0.0207
从上表可以看出,得到的回归模型为 ln,常数项和线性项的 t 检验的 P 值均 小于 0.05,说明回归方程中常数项和线性项均是显著的。并且,检验的 P 值为 0.0207 小于 0.05,说明整个回归方程是显著的,表明存在异方差性。
5
Residuals
0
-5
-10
5
10
15
20
25
30
Case Number
图 4.2 原始数据对应残差图
从残差图可以看到有 2 条线段(红色虚线)与水平线 y=0 没有交点,它对应 的观测号为 22 和 29,也就是说这两组观测对应的残差的置信区间不包含 0 点, 可认为这两组观测数据为异常数据。它们分别是(30,16.7),(35,20)。
① ei yt yˆt ② 将ei取绝对值,并把|ei | 和xi按递增或递减次序排序,
计算
Spearman
系数
rs
,其中:
rs
=1-
6 n(n2 -1)
n i 1
di2
其中, n为样本容量di为|ei | 和xi的等级的差数。
③ 做等级相关系数的显著性检验。n>8 时,
当H0成立时,t
t'})
ST1.tstat.beta
% 输出参数的估计值
ST1.tstat.pval
% 输出回归系数t检验的P值
ST1.fstat.pval
% 输出回归模型显著性检验的P值
(3)加权最小二乘法(详见test4_3.m文件)
%%%%%%%%%%% 调用robustfit函数作稳健回归 %%%%%%%%%%%%
n 2 rs ~ t(n 2) 1 rs2
若t t/2(n2),认为异方差性问题不存在;
反之,若t t/2(n2), 说明| ei |与xi之间存在系统关系,异方差问题存在。
(4) 帕克(Park)检验 帕克检验常用的函数形式:
2
若在统计上是显著的,表明存在异方差性。
2、异方差性的处理方法: 加权最小二乘法
[rs,p]=corr(x,res,'type','spearman')
disp('其中rs为皮尔曼等级相关系数,p为p值');
(2)帕克(park)检验法(详见 test4_2.m 文件)
%%%%%%%%%%%%%%% 用帕克(park)检验法来检验异方差性 %%%%%%%
4
[data,head]=xlsread('test4.xlsx'); %导入数据
(1)等级相关系数法(详见 test4_1.m 文件)
%%%%%%%%%%%%%%% 用等级相关系数法来检验异方差性 %%%%%%%%
[data,head]=xlsread('test4.xlsx');
x=data(:,1); %提取第一列数据,即可支配收入x
y=data(:,2); %提取第二列数据,即居民消费支出y
plot(x,y,'k.'); % 画x和y的散点图
xlabel('可支配收入x(千元)') % 对x轴加标签
ylabel('居民消费支出y(千元)') % 对y轴加标签
%%%%%%%% 调用regres函数进行一元线性回归 %%%%%%%%%%%%
xdata=[ones(size(x,1),1),x]; %在x矩阵最左边加一列1,为线性回归做准备
河南 湖北 湖南 广东 广西 海南 重庆 四川 贵州 云南 陕西 甘肃 青海
11
20
15
26
35 30.5
12
20
16
27
35 28.7
13
20
12
28
35 31.1
14
20
13
29
35
20
15
20 19.1
30
35 29.9
若用线性模型yi 0 1xi ui ,研究不同收入家庭的消费情况,试问原
数据有无异方差性?如果存在异方差性,应如何处理?
3
解:(一)编写程序如下:
美元)
(亿元)
美元)
(亿元)
北京 219126 天津 153473 河北 96405 山西 21361 内蒙 8854 辽宁 282410 吉林 19059 黑龙江 32180 上海 546849 江苏 1056365 浙江 498055 安徽 36720 福建 259903
3663.10 2447.66 7098.56 2456.59 2150.41 6002.54 2522.62 4430.00 6250.81 12460.83 9395.00 3972.38 5232.17
[b,bint,r,rint,s]=regress(y,xdata);
yhat=xdata*b;
%计算估计值y
% 定义元胞数组,以元胞数组形式显示系数的估计值和估计值的95%置信区间
head1={'系数的估计值','估计值的95%置信下限','估计值的95%置信上限'};
[head1;num2cell([b,bint])]
估计值
head3={'判定系数','F统计量的观测值','检验的P值','误差方差的估计值'};
[head3;num2cell(s)]
%%%%%%%%%%%%% 残差分析 %%%%%%%%%%%%%%%%%% figure; rcoplot(r,rint) % 按顺序画出各组观测值对应的残差和残差的置信区间
8
1
0.9
0.8
0.7
0.6
权重
0.5
0.4
0.3
0.2
0.1
0
-10
-8
-6
-4
-2
0
2
4
残差
图 4.5 残差和权重的散点图
由图 4.5 知:权重集中在最上方的 1 附近的点比较多,说明稳健性比较好。
六、实验内容
下表是我国各地区 2003 年 FDI 和 GDP 的数据,
项目 2003 年 FDI(万 2003GDP 项目 2003 年 FDI(万 2003GDP
[data,head]=xlsread('test4.xlsx'); % 导入数据
x=data(:,1);
y=data(:,2);
% 调用robustfit函数作稳健回归,返回系数的估计值b和相关统计量stats
[b,stats]=robustfit(x,y) %调用函数作稳健回归
stats.p
% 输出模型检验的P值
xlabel('可支配收入(x)') % 对x轴加标签
ylabel('残差的平方')
%对y轴加标签
%%%%%%% 对原数据x和残差平方r^2取对数,并对log(x)和log(r^2)进行一元线性回归
ST1=regstats(log((ST.r).^2),log(x),'linear',{'r','beta','tstat','fsta
% 定义元胞数组,以元胞数组形式显示y的真实值,y的估计值,残差和残差的95%置信区间
head2={'y的真实值','y的估计值','残差','残差的95%置信下限','残差的95%置信上限
'};
[head2;num2cell([y,yhat,r,rint])]
% 定义元胞数组,以元胞数组形式显示判定系数,F统计量的观测值,检验的P值和误差方差的
%%% 画估计值yhat与残差r的散点图
figure;
plot(yhat,r,'k.')
% 画散点图
xlabel('估计值yhat') % 对x轴加标签
ylabel('残差r')
% 对y轴加标签
%%%%%%%%%%%% 调用corr函数计算皮尔曼等级相关系数
res=abs(r);
% 对残差r取绝对值
ui )
f
1 (x
ji
)
Var(ui
)
1 f (xji )
f
(
x
ji
)
2 u
2 u
即满足同方差性。于是可以用 OLS 估计其参数,得到关于参数 1, 2 ,, p 的
无偏、有效估计量。
五、实验举例
例 1、某地区居民的可支配收入 x(千元)与居民消费支出 y(千元)的数据如下:
No
综上所述,通过以上 3 种方法的检验,我们得到原数据存在异方差性。
第三步:用加权最小二乘法处理异方差性
表3
‘回归系数’
回归系数 t 检验的 P 值
=-1.6091
0.2375
=0.8870
0.0000
由表 3 得:回归方程为,由 p 值可知 x 的回归系数是显著的,常数项未显著,说明其无 实际意义。
[ -0.5390] [
[
0.8091] [
-3.7241] [ 0.6768] [
2.6460] 0.9415]
'判定系数' 'F 统计量的观测值' '检验的 P 值' '误差方差的估计值'
[ 0.8485] [
156.8387] [5.4040e-13] [
9.1316]
由输出结果看,常数项和回归系数的估计值分别为-0.539 和 0.8091,从而可
x
y
no
x
y
1
10
8
16
25 19.1
2
10
8.2
17
25 23.5
3
10
8.3
18
25 22.4
4
10
8.1
19
25 23.1
5
10
8.7
20
25 15.1
6
15 12.3
21
30 24.2
7
15
9.4
22
30 16.7
8
15 11.6
23
30
27
9
15
12
24
30
26
10
15
8.9
25
30 22.1
x=data(:,1);
y=data(:,2);
%%%%%% 调用regstats函数进行一元线性回归,linear表带有常数项的线性模型,r表残差
ST=regstats(y,x,'linear',{'yhat','r','standres'});
scatter(x,(ST.r).^2) % 画x与残差平方的散点图
实验四 异方差性的检验及处理(2 学时)
一、实验目的
(1)、掌握异方差检验的基本方法; (2)、掌握异方差的处理方法。
二、实验学时:2 学时 三、实验要求
(1)掌握用 MATLAB 软件实现异方差的检验和处理; (2)掌握异方差的检验和处理的基本步骤。
四、实验原理
1、异方差检验的常用方法 (1) 用 X-Y 的散点图进行判断