1、9 3.80 3.65 5.25 -0.15 7.1010 3.85 4.00 6.00 0.15 8.0011 3.90 4.10 6.50 0.20 7.8912 3.90 4.00 6.25 0.10 8.1513 3.70 4.10 7.00 0.40 9.1014 3.75 4.20 6.90 0.45 8.8615 3.75 4.10 6.80 0.35 8.9016 3.80 4.10 6.80 0.30 8.8717 3.70 4.20 7.10 0.50 9.2618 3.80 4.30 7.00 0.50 9.0019 3.70 4.10 6.80 0.40 8.7520
2、3.80 3.75 6.50 -0.05 7.9521 3.80 3.75 6.25 -0.05 7.6522 3.75 3.65 6.00 -0.10 7.2723 3.70 3.90 6.50 0.20 8.0024 3.55 3.65 7.00 0.10 8.5025 3.60 4.10 6.80 0.50 8.7526 3.65 4.25 6.80 0.60 9.2127 3.70 3.65 6.50 -0.05 8.2728 3.75 3.75 5.75 0 7.6729 3.80 3.85 5.80 0.05 7.9330 3.70 4.25 6.80 0.55 9.261.1(验
3、证)基本模型p325329先保存上面的p325.txt文件。(1) 绘制y对x1的散点图程序如下:M=dlmread(p325.txt);%读取ASCII码文件x1=M(:,5); y=M(:,6);plot(x1,y, bo提示:dlmread将以ASCII码分隔的数值数据文件读入到矩阵中dlmread:读取ASCII码文件的MATLAB函数fun.txtfun.m是一个数据文件,存放一个数据矩阵,将文件内容写入M。(1) 运行程序并给出结果(比较327图1):(2) 确定y对x1的拟合,绘制散点图与拟合曲线组合图形从y对x1的散点图可以发现,可用线性模型(直线)来拟合(其中是随机误差)。c
4、lc; format short g;b=regress(y,ones(size(x1),x1); % b=0 1 ,列向量x1=sort(x1); %按升序排序,用于画图y=ones(size(x1),x1*b;%使用矩阵乘法hold on;-rhold off;regress多元线性回归函数调用格式b,bint,r,rint,stats=regress(y,x,alpha)例,多元回归模型为:输入:y为n(=30)维列向量数据。x为对应于回归系数 ( 0, 1, 2, 3 ) 的数据矩阵 1 x1 x2 x22(304矩阵,第1列全1)。alpha为置信水平(缺省时为0.05)。输出:b为
5、=( 0, 1, 2, 3 )估计值,4维列向量。bint为b的置信区间,42矩阵。r为残差n(=30)维列向量y-x。rint为r的置信区间,30stats为回归模型的检验统计量,含4个值: R2 回归方程的决定系数(R是相关系数) F 统计值 P 与F统计量对应的概率值 s2 剩余方差(2) 运行程序并给出结果(比较327图1):(3) 绘制y对x2的散点图x2=M(:,4);plot(x2,y,(3) 运行程序并给出结果(比较327图2):(4) 确定y对x2的的拟合,绘制散点图与拟合曲线组合图形从y对x2的散点图可以发现,可用二次函数模型来拟合。format short g;b=reg
6、ress(y,ones(size(x2),x2,x2.2); % b=0 1 2x2=sort(x2);y=ones(size(x2),x2,x2.2*b; %使用矩阵乘法(4) 运行程序并给出结果(比较327图2):(5) y对x1, x2的回归模型及其求解,销售量预测综上得回归模型变量x1, x2为回归变量,参数0, 1, 2, 3为回归系数。 format compact;b,bint,r,rint,stats=regress(y,ones(size(x1),x1,x2,x2.2,0.05);fprintf(%2s%5s%11sn,参数估计值置信区间%1个汉字算1个字符for i=1:l
7、ength(b) fprintf (%1d%9.4f %7.4f, %7.4fn,i-1,b(i,:),bint(i,:);end % %d将i当整数输出,%7.4f按实数格式输出,区域宽7个字符,4位小数nR2=%.4f F=%.4f p%.4e s2=%.4fn,stats); x1=0.2; x2=6.5; y=1 x1,x2,x22*b;n销售量预测:x1=%.1f, x2=%.1f, y=%.4fn,x1,x2,y);fprintf输出到命令窗口或写数据到文本文件见参考资料:MATLAB函数和命令的用法。(5) 运行程序并给出结果(比较328表2,329的预测结果):1.2(验证,编
8、程)模型改进p329332仍使用题1的数据。(1)(编程)y对x1, x2的回归模型的改进和求解,销售量预测改进的模型参考题1(5)的程序,编写一个类似的程序,运行结果与教材p329330的表3及相关结果相比较。(1) 给出程序和运行结果(比较329表3):b,bint,r,rint,stats=regress(y,ones(size(x1),x1,x2,x2.2,x1.*x2,0.05); y=1 x1,x2,x22,x1.*x2*b;(2)(验证)完全二次多项式模型运行以下程序(参考教材p331332):clear; clc; %读取ASCII码文件 x2=M(:rstool(x1,x2,
9、y,quadratic)得以下的交互画面。画面中的两个座标系给出y的估计值和预测区间。用鼠标移动交互式画面中的十字线,或在图下方的窗口内输入,可改变x1和x2的数值。改变x1=0.2,x2=6.5,观察窗口左边的y估计值和预测区间。点击所得交互画面左下方的输出按钮“Export”,所得画面(导出到工作空间)第1个复选框是“将拟合参数存到一个名为beta的MATLAB变量中”,点击OK。在命令窗口提示符键入变量名beta将得到参数( 0, 1, 2, 3, 4, 5 ) 的值。(2) 运行程序并给出结果:参数(0,1,2,3,4,5) 的值(比较331):2. 软件开发人员的薪金p332338在
10、下面给出的数据中:(存入文件p333.txt)第1列 编号第2列 薪金y第3列 资历x1(从事专业工作的年数)第4列 管理x2(1表示管理人员,0表示非管理人员)第5列 教育x3,x4(1表示中学程度x3x4=10,2为大学x3x4=01,3为更高程度x3x4=00)01 13876 1 1 102 11608 1 0 303 18701 1 1 304 11283 1 0 205 11767 1 0 306 20872 2 1 207 11772 2 0 208 10535 2 0 109 12195 2 0 310 12313 3 0 211 14975 3 1 112 21371 3 1 213 19800 3 1 314 11417 4 0 115 20263 4 1 316 13231 4 0 317 12884 4 0 218 13245 5 0 219 13677 5 0 320 15965 5 1 121 12366 6 0 122 21352
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1