A题思路之一多元非线性回归分析
- 格式:doc
- 大小:132.50 KB
- 文档页数:7
A题思路之一——多元非线性回归分析本题求解关键为建立工资与其他7个因素之间的关系模型,可以考虑采用回归分析法,也可以考虑其他方法;以下仅以回归分析法过程为例给出分析思路,仅供参考:注意:根据下述结果发现本问题应该考虑为多元非线性回归,因此请大家优先挑出使用非线性回归模型的论文,其余酌情考虑。
1.数据预处理1)为数据分析方便,应该考虑名义变量或有序变量的量化处理(编码),如可以考虑如下编码方案(含符号约定):y-日平均工资的对数,便于回归分析;作为因变量。
11~ 0~x⎧=⎨⎩男性女性;2x:工龄31~ 0~x⎧=⎨⎩男性或单身女性已婚女性;40x ⎧⎪⎪⎨⎪⎪⎩~本科1~硕士(受教育状况)=2~博士3~博士后;51~ ()0~x⎧=⎨⎩管理岗位工作部门性质技术岗位;61~ 0~x⎧=⎨⎩受过培训(培训情况)未受过培训;71~ 0~x⎧=⎨⎩两年以上未从事一线工作(一线工作情况)其它情况2)分别作出y与各自变量之间的散点图,发现与x2非线性关系较为明显(下图所示),所以应该考虑为非线性模型,data=xlsread('Adata.xls',2);y=data(:,1);x=data(:,2:8);plot(x(:,2),y,'r*')title('lny vs x2')0501001502002503003504004505003.43.63.844.24.44.64.85lny vs x23)相关性分析data=xlsread('Adata.xls',2); y=data(:,1); x=data(:,2:8); s=corrcoef(data); xlswrite('coef.xls',s)lny X1 X2 X3 X4X5 X6 X7 10.2669950.775291 0.286135 0.505526 0.277929 0.199178 0.489786 0.266995 10.1603890.679446 0.312348 0.417621 -0.10498 0.316025 0.775291 0.160389 10.2260960.103146 0.098854 0.151146 0.156321 0.286135 0.679446 0.226096 10.2669370.213363 -0.27966 0.229535 0.505526 0.312348 0.103146 0.266937 10.4127450.219762 0.855236 0.277929 0.417621 0.098854 0.213363 0.412745 1-0.053070.423355 0.199178 -0.10498 0.151146 -0.27966 0.219762 -0.05307 10.2556650.489786 0.316025 0.156321 0.229535 0.855236 0.423355 0.255665 1相关系数表也提示y 仅与x2,x4关系密切.与婚姻状况x1,x3关系不明显.2、建模及简易求解(第1、3问)以下考虑分别用多元线性回归模型、线性逐步回归模型、非线性模型分析,从中选择相对最优的模型。
1).多元线性回归结果 源程序:data=xlsread('Adata.xls',2); Y=data(:,1); x=data(:,2:8); X=[ones(90,1),x];[b,bint,r,rint,stats]=regress(Y ,X); b,bint,stats结果:b (系数) =3.6623 常数项 0.0044 x1 0.0016 x2 -0.0010 x3 0.1713 x4 0.0170 x5 -0.0012 x6 0.0143 x7Bint (系数95%置信区间) =3.5957 3.7289 -0.0828 0.0917 0.0014 0.0019 -0.0930 0.0910 0.0849 0.2577 -0.0536 0.0876 -0.0798 0.0773 -0.1254 0.1540置信区间包含零点,可认为在95%置信度下,相应变量对y 影响不显著,应该考虑改进模型。
stats (统计量)=0.7852 (决定系数) 42.8304(F 值) 0 (P 值) 0.0193关于异常值:利用上述多元线性回归模型分析结果,继续做异常点分析,rcoplot(r,rint)发现5个异常点: 43 52 60 61 90Residual Case Order PlotR e s i d u a l sCase Number从原始数据中将其剔除后,重新做多元线性回归, 源程序:data=xlsread('Adata.xls',4);Y=data(:,1);x=data(:,2:8);X=[ones(85,1),x];[b,bint,r,rint,stats]=regress(Y,X);b,bint,stats结果b =3.65020.00550.0017-0.02820.17520.0188-0.00760.0330bint =3.5949 3.7055-0.0688 0.07980.0015 0.0019-0.1056 0.04930.1026 0.2477-0.0406 0.0782-0.0739 0.0587-0.0880 0.1539stats =0.852663.6071 0 0.0132可见决定系数与F值均提高!2)线性逐步回归结果(考虑采用逐步回归方法)data=xlsread('Adata.xls',4);y=data(:,1);x=data(:,2:8);stepwise(x,y);系数:beta =0.00170.1926系数95%置信区间:betaci =0 00.0015 0.00190 00.1566 0.22870 00 00 0统计量stats =intercept: 3.6449(常数项)rmse: 0.1124rsq: 0.8495(决定系数)adjrsq: 0.8440fstat: 231.4507(F值)pval: 0(P值)较多元线性模型相比,尽管决定系数略有下降,但F值上升很快,逐步回归整体效果优于多元线性模型。
3)多元非线性回归(含平方项、交叉项)模型:y=a+b*x2+c*x2^2+d*x4+e*x5*x6(仅为一特例,考虑工资可能与x5,x6有一定的关系。
另外其他组合较多,留给大家更多思考空间!)data=xlsread('Adata.xls',4);y=data(:,1);x=data(:,2:8);% rstool(x,y,'quadratic')X=[ones(85,1) x(:,2),x(:,2).^2,x(:,4),x(:,5).*x(:,6)];[b,bint,r,rint,stats]=regress(y,X);b,bint,statsb =3.52850.0038-0.000005050575980.16290.0300bint =3.4841 3.57300.0032 0.0043-0.00000638020871 -0.000003720943260.1307 0.1950-0.0412 0.1011(包含零点)stats =0.9122(决定系数)207.8439(F值)0 (P值)0.0075可见上述交叉项对y影响不够显著,考虑剔除。
4)多元非线性回归(仅含平方项)模型:y=a+b*x2+c*x2^2+d*x4data=xlsread('Adata.xls',4);y=data(:,1);x=data(:,2:8);X=[ones(85,1) x(:,2),x(:,2).^2,x(:,4)];[b,bint,r,rint,stats]=regress(y,X);b,bint,stats结果:b =3.52820.0038-0.00000499497561 0.1691bint =3.4839 3.5726 0.0032 0.0043-0.00000631534196 -0.00000367460927 0.1406 0.1976stats =0.9115(决定系数) 277.9148(F 值) 0 (P 值) 0.0075本模型较带交叉项模型决定系数减小,但是系数95%置信区间均显示各变量对y 影响显著,并且F 大幅提升,因此最终选择模型如下:22243.52820.00380.00000490.1691y x x x =+-+特别注意:本问题可能还有更加优秀的模型及结果!3、第二问关于女工是否受到不公正待遇,以及她们的婚姻状况是否影响其收入,可以从以下几个角度之一考虑:y 与x3相关系数;逐步回归结果中剔除了x1和x3; 也可采用单因素方差分析考虑。
其他做法。
**********************完!****************************。