《数据分析方法》课程实验报告项目名称:学生姓名:学生学号:指导教师:完成日期:1.实验内容滕伟200707020118白林2009年11月13日(1)掌握回归分析的思想和计算步骤;(2)编写程序完成回归分析的计算,包括后续的显著性检验、残差分析、Box-Cox 变换等内容2. 模型建立与求解(数据结构与算法描述)3. 实验数据与实验结果解:根据所建立的模型在MATLAB中输入程序(程序见附录)得到以下结果:(1)回归方程为:说明该化妆品的消量和该城市人群收入情况关系不大,轻微影响,与使用该化妆 品的人数有关的无偏估计:(2)方差分析表如下表:方差来源 自由度 平方和 均方 值回归() 2 53845 26922 56795 2.28误差() 12 56.883 4.703总和() 14 53902从分析表中可以看出:值远大于的值所以回归关系显著 复相关,所以回归效果显著解:根据所建立的模型,在MATLAB中输入程序(程序见附录)得到如下结果:(1)回归方程为:在MTLAB中计算学生化残差(见程序清单二),所得到的学生化残差r的值由残差可知得到的 r 的值在(-1,1)的概率为0.645,在(-1.5,1.5)的概率 为 0.871,在(-2,2)之间的概率为 0.968.而服从正态分布的随机变量取值在(-1,1)之间的概率为 0.68,在(-1.5, 1.5)之间的概率为0.87,在(-2.2)之间的概率为0.95,所以相差较大,所以 残差分析不合理,需要对数据变换。
取=0.6进行 Box-Cox 变换在 MATLAB 中输入程序(见程序代码清单二)取,所以得到r的值(r的值见附录二)其值在(-1, 1)之间的个数大约为20/31=0.65,大致符合正态分布,所以重新拟合为:拟合函数为:通过F值,R值可以检验到,回归效果显著(3)某医院为了了解病人对医院工作的满意程度和病人的年龄,病情的严重程 度和病人的忧虑程度之间的关系,随机调查了该医院的 23 位病人,得数据如下 表:年龄病情程度忧虑程度满意程度50512.34836462.35740482.26641441.87028431.88949542.93642502.24645482.45452622.92629502.17729482.48943532.46738552.24734512.35153542.25736492.06633562.57929461.98833492.16055512.44929522.37744582.95243502.3601) 拟合线性回归模型,通过残差分析与考察模型及有关误差分布正态性假定 的合理性;(2) 若(1)中模型合理,分别在 ,准则下选择最优回归方程,各准则下的选 择结果是否一致?(3) 对,用逐步回归法选择最优回归方程,其结果和(2)中的数否一致?(4) 对选择的最优回归方程作残差分析,与(1)中的相应结果比较,有何变 化?习题 2.6解:(1)回归参数的的最小二乘估计为:。
在 MATLAB 中输入程序(见程序代码清单二)可得:,,所以回归方程为:对数据做 Box-Cox 变换,(由于的取值在能力范围不好确定,所以经测试,取=0.6进行 Box-Cox 变换在 MATLAB 中输入程序(见程序代码清单二)取,所以得到r的值(r的值见附录二)其值在(-1,1)之间的个数大约为 20/31=0.65,大致符合正态分布,所以重新拟合为: 拟合函数为:通过F值,R值可以检验到,回归效果显著习题 2.9解:根据所建立的模型,在MATLAB中输入程序,得到以下结果:(1) 所得到的回归方程为:( 2 )所得到的学生化残差见附录,通过对残差的分析,很明显不符合正态分布所以(1)中所建立的模型不合理4.程序代码清单习题 2.4x=[1 274 24501 18032541 37538021 20528381 8623471 26537821 9830081 33024501 19521371 5325601 43040201 37244271 23626601 15720881 3702605];y=[162120223131671698119211655252232144103 212];n=15;p=3 b=inv(x'*x)*x'*y h=x*inv(x'*x)*x'; sse=y'*(eye(n,n)-h)*y d2=1/(n-p)*y'*(eye(n,n)-h)*y sst=y'*(eye(n,n)-(1/n)*ones(n,n))*y ssr=y'*(h-1/n*ones(n,n))*y msr=ssr/(p-1)mse=sse/(n-p) f=msr/mse r2=1-sse/sst 习题2.6 x=[1 8.3 7018.66518.863110.572110.781110.883111.066111.075111.180111.275111.379111.476111.476111.769112.075112.974112.985113.386113.771113.864114.078114.280114.574116.072116.377117.381117.582117.980118.080118.080120.687 ];y=[10.310.310.216.418.819.715.618.222.619.924.221.021.421.319.122.233.827.425.724.934.531.736.338.342.655.455.758.351.551.077.0];n=31;p=3;b=inv(x'*x)*x'*y; h=x*inv(x'*x)*x';sst=y'*(eye(n,n)-(1/n)*ones(n,n))*y sse=y'*(eye(n,n)-h)*y mse=sse/(n-p)ssr=y'*(h-1/n*ones(n,n))*y msr=ssr/(p-1)f=msr/mse r2=1-sse/sst for i=1:na=h(2*(i-1)+i),2:2)+0.3393*x(:,3:3))end t=sqrt((mse-mse*a)) q=y-(-57.9877+4.7082*x( r=q/t程序三x=[1 8.3 701 8.6 651 8.8 631 10.5 721 10.7 811 10.8 831 11.0 661 11.0 751 11.1 801 11.2 751 11.3 791 11.4 761 11.4 761 11.7 691 12.0 751 12.9 741 12.9 851 13.3 861 13.7 711 13.8 641 14.0 781 14.2 801 14.5 741 16.0 721 16.3 771 17.3 811 17.5 821 17.9 801 18.0 801 18.0 801 20.6 87 ];y=[10.310.310.216.418.819.715.618.222.619.924.221.021.421.319.122.233.827.425.724.934.531.736.338.342.655.455.758.351.551.077.0];n=31;p=3;m=0:0.01:1;y=(y.F-1)/mb=inv(x'*x)*x'*y h=x*inv(x'*x)*x';sse=y'*(eye(n,n)-h)*y mse=sse/(n-p)f=msr/mser2=1-sse/sstfor i=1:na=h(2*(i-1)+i)endt=sqrt((mse-mse*a))q=y-(-57.9877+4.7082*x(:,2:2)+0.3393*x(:,3:3)) r=q/t习题2.9a=[ 1 50 51 2.3 48136462.357140482.266141441.870128431.889149542.936142502.246145482.454152622.926129502.177129482.489143532.467138552.247134512.351153542.257136492.066133562.579129461.988133492.160155512.449129522.377144582.952143502.360]y=a(:5:5)x=a(:,1:4)n=23;p=4;b=inv(x'*x)*x'*yh=x*inv(x'*x)*x';sst=y'*(eye(n,n)-(1/n)*ones(n,n))*ysse=y'*(eye(n,n)-h)*ymse=sse/(n-p)ssr=y'*(h-1/n*ones(n,n))*ymsr=ssr/(p-1)f=msr/mser2=1-sse/sstfor i=1:na=h(2*(i-1)+i)endt=sqrt((mse-mse*a))q=y-(162.8575-1.2103*x(:,2:2)-0.6659*x(:,3:3)-8.613*x(:,4:4)) r=q/t附录:习题2.6学生化残差r=1.38571.45781.36560.1325-0.2725-0.3358-0.1514-0.26650.3002-0.07400.5535-0.1200-0.01840.2006-1.2333-1.43580.5614-1.6275-1.2451-0.96480.0273-1.09480.2312-0.8816-0.57931.13030.88131.2355-0.6102-0.73722.1526 习题2.9学生化残差 r =-0.0558-1.15630.24080.15300.4069-0.6459-1.3453-0.1718-0.74760.06091.35451.1860-1.3953-1.65331.2882-0.33501.45510.7065-1.19110.71660.35900.58530.2236上课纪律(20%)实验过程及结果(40%)实验报告质量(40%)总分:教师签字:1. 实验内容(1)掌握主成份分析与典型相关分析的思想和计算步骤;(2) 编写程序完成主成份分析与典型相关性分析的计算;2. 模型建立与求解(数据结构与算法描述)1. 计算样本主成分的步骤:(1)计算样本协方差矩阵 S 和相关系数矩阵 R:(2)计算 S 的特征值和相应的正交化特征向量:,(3) 第 K 个样本的得分样本方差:(4) 前 M 个样本主成分的累加贡献率:(5) 选取m(m
2.计算样本典型变量相关系数的步骤:(1) 计算样本的协方差矩阵:(2) 计算 A,B 矩阵的特征值和正交化向量(3) 第 K 个样本典型相关变量为:3. 实验数据与实验结果习题 4.5解:在 MATLAB 中输入程序(见附录)样本相关系数矩阵 R 为:0.3336 -0.0545 -0.0613 -0.2894 0.1988 0.3487 0.31870.33361-0.02290.3989-0.15630.71110.41360.835-0.0545-0.022910.53330.49680.0328-0.1391-0.2584-0.06130.39890.533310.69840.4679-0.17130.3128-0.2894-0.15630.49680.698410.2801-0.2083-0.08120.19880.71110.03280.46790.280110.41680.70160.34870.4136-0.1391-0.1713-0.20830.416810.39890.31870.835-0.25840.3128-0.08120.70160.39891对应的特征值为:3.09632.36720.920.70590.49840.05150.13080.2299所以各主成分的贡献率为:X10.387X50.0623X20.2959X60.0064X30.115X70.0163X40.0882X80.0287前两个主成分的累加贡献率为:0.3870+0.2959=0.6859各省市按照第一主成分排序,结果如下:海南河南宁夏西藏广西广东陕西湖北辽宁江苏天津内蒙古山西北京四川福建甘肃上海黑龙江新疆青海河北吉林浙江湖南云南山东安徽贵州江西习题4.10解:在MATLAB中输入程序(程序见清单二):得到相关系数矩阵R10.93620.49340.936210.76770.49340.76771对应的特征值为00.41660.90914 程序清单:清单一a=[8.3523.537.51 8.62 17.42101.049.2523.756.61 9.19 17.7710.48 1.728.1930.54.72 9.78 16.287.6 2.527.7329.25.42 9.43 19.298.49 2.529.4227.938.2 8.1416.17 9.421.559.1627.989.01 9.32 15.999.1 1.8210.0628.6410.52 10.05 16.188.39 1.969.0928.127.4 9.6217.26 11.122.499.4128.25.77 10.8 16.3611.56 1.538.7 28.12 7.21 10.5319.45 13.31.669.7611.2110.5110.321011.3510.8112.6512.1711.966.9329.854.549.4916.6210.651.8813.618.6736.057.317.7516.6711.682.3812.889.9837.697.018.9416.1511.080.8311.676.7738.696.018.8214.7911.441.7413.238.1437.759.618.4913.159.761.2811.287.6735.718.048.3115.137.761.4113.257.9 39.77 8.49 12.94 19.27 11.05 2.0413.297.1840.917.328.9417.612.751.1414.88.8233.77.5910.9818.8214.731.7810.16.2535.024.726.2810.037.151.9310.3910.652.417.7 9.98 12.53 11.7 2.3114.697.2752.653.849.1613.0315.261.9814.5713.4555.855.5 7.45 9.55 9.52 2.2116.310.8544.687.3214.5117.1312.081.2611.577.2145.797.6610.3616.5612.862.2511.697.6850.3711.3513.319.2514.592.7514.877.7848.448 20.51 22.12 15.73 1.1516.617.9439.6520.9720.8222.5212.411.757.98.2864.348 22.22 20.06 15.12 0.7222.8912.4776.395.5211.2414.5222 5.4625.5];r=corrcoef(a); b=eig(r) for i=1:8 e=b(i)/sum(b) end清单二:a=[6069629769 9856538410378107806976669913055809080851146275681161309174647010910110364716677102130737064115110109686775768511969827472133127606761130134121707478150158100667478150131142837074999810568669011985109786375164981381037777160117121776874144711536677687782897070721149312275657177701099174931181151506675731701471217582761531321157471661431051007670641141131297490867310611674778011681776771696387707875801051328064667183941337180768187866375731208959901037410710910160766199111984877751131249766939713611212274707610988105607471729071637566130101906680861301171447767748392107706710015014214673768111912011978907712215514973688010290122728368104699665607011994895270769294100];b=a';r=corrcoef(b);r11=r(1:3,1:3);r21=r(4:6,1:3);r12=r21';r22=r(4:6,4:6);R=corrcoef(inv(r11)*r12*inv(r22)*r21) lamda=eig(R);p=sqrt(lamda)。