资源描述:
《实验11_统计回归模型(4学时)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、《数学建模实验》王平实验11统计回归模型(4学时)(第10章统计回归模型)1.牙膏的销售量p325~332下面给出一组数据,其中:第1列销售周期;第2列某公司牙膏销售价格(元)x4;第3列其它厂家平均价格(元)x3;第4列广告费用(百万元)x2;第5列价格差(元)x1(x3-x4);第6列销售量(百万支)y。存放在一个名为p325.txt的文件中。13.853.805.50-0.057.3823.754.006.750.258.5133.704.307.250.609.5243.703.705.5007.5053.603.857.000.259.3363.603.806.500.208.287
2、3.603.756.750.158.7583.803.855.250.057.8793.803.655.25-0.157.10103.854.006.000.158.00113.904.106.500.207.89123.904.006.250.108.1559133.704.107.000.409.10143.754.206.900.458.86153.754.106.800.358.90163.804.106.800.308.87173.704.207.100.509.26183.804.307.000.509.00193.704.106.800.408.75203.803.756.50-
3、0.057.95213.803.756.25-0.057.65223.753.656.00-0.107.27233.703.906.500.208.00243.553.657.000.108.50253.604.106.800.508.75263.654.256.800.609.21273.703.656.50-0.058.27283.753.755.7507.67293.803.855.800.057.93303.704.256.800.559.261.1(验证)基本模型p325~329先保存上面的p325.txt文件。(1)绘制y对x1的散点图程序如下:M=dlmread('p325.tx
4、t');%读取ASCII码文件x1=M(:,5);y=M(:,6);plot(x1,y,'bo');[提示:dlmread将以ASCII码分隔的数值数据文件读入到矩阵中]dlmread:读取ASCII码文件的MATLAB函数M=dlmread('fun.txt');fun.m是一个数据文件,存放一个数据矩阵,将文件内容写入M。59☆(1)运行程序并给出结果(比较[327]图1):(2)确定y对x1的拟合,绘制散点图与拟合曲线组合图形从y对x1的散点图可以发现,可用线性模型(直线)来拟合(其中ε是随机误差)。程序如下:clc;formatshortg;M=dlmread('p325.txt');
5、%读取ASCII码文件x1=M(:,5);y=M(:,6);plot(x1,y,'bo');b=regress(y,[ones(size(x1)),x1]);%b=[β0β1]',列向量x1=sort(x1);%按升序排序,用于画图y=[ones(size(x1)),x1]*b;%使用矩阵乘法holdon;plot(x1,y,'-r');holdoff;59[提示:regress多元线性回归函数调用格式][b,bint,r,rint,stats]=regress(y,x,alpha)例,多元回归模型为:输入:y为n(=30)维列向量数据。x为对应于回归系数(β0,β1,β2,β3)'的数据矩阵
6、[1x1x2x22](30×4矩阵,第1列全1)。alpha为置信水平(缺省时为0.05)。输出:b为β=(β0,β1,β2,β3)'估计值,4维列向量。bint为b的置信区间,4×2矩阵。r为残差n(=30)维列向量y-xβ。rint为r的置信区间,30×2矩阵。stats为回归模型的检验统计量,含4个值:R2回归方程的决定系数(R是相关系数)F统计值P与F统计量对应的概率值s2剩余方差59☆(2)运行程序并给出结果(比较[327]图1):(3)绘制y对x2的散点图程序如下:clc;formatshortg;M=dlmread('p325.txt');%读取ASCII码文件x2=M(:,4)
7、;y=M(:,6);plot(x2,y,'bo');59☆(3)运行程序并给出结果(比较[327]图2):(4)确定y对x2的的拟合,绘制散点图与拟合曲线组合图形从y对x2的散点图可以发现,可用二次函数模型来拟合。程序如下:clc;formatshortg;M=dlmread('p325.txt');%读取ASCII码文件x2=M(:,4);y=M(:,6);plot(x2,y,'bo');b=r