可直线化曲线回归分析_第1页
可直线化曲线回归分析_第2页
可直线化曲线回归分析_第3页
可直线化曲线回归分析_第4页
可直线化曲线回归分析_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、非 线 性 回 归 分 析 与 SAS 的 智 能 化 实 现 实 验 报 告实验名称 第3章 可直线化的曲线回归分析 班 级 数学与应用数学 一、上机操作与练习1、曲线直线化分析、研究免疫球蛋白A做火箭电泳,测得的火箭高度,x为免疫球蛋白A的浓度,y为火箭高度。(1)程序:data nr3_1; /*命名将要建立的数据集为nr3_1*/input x y ; /*要输入变量为x、y,并且连续输入*/ x1=log10(x); x2=1/x; x3=log(x); y1=1/y; y2=log(y); cards; /*数据块开始*/ 0.2 7.6 0.4 12.3 0.6 15.7 0.8

2、 18.2 1.0 18.7 1.2 21.4 1.4 22.6 1.6 23.8 ; /*数据块结束*/run;ods html;proc gplot; /*绘制散点图*/ plot y*x/haxis=0 to 1.6 /*散点图中点表示在以y为纵轴,x为横坐标的直角坐标系中*/by 0.4 vaxis=0 to 25 by 5; symbol value=dot;run;proc reg; /*标志reg过程的开始,进行含有截距项的直线回归分析*/ model y=x1; model y1=x2; model y2=x3;run;ods html close;(2)运行结果及其解释: 该

3、图是根据原始资料绘制的IgA浓度和火箭高度之间的数据对用sas程序运行得到的散点图,可发现其趋势与对数曲线、双曲线或幂函数曲线很相似,故对两变量进行相应变换。上图是根据原始资料绘制的IgA浓度和火箭高度之间的数据对用曲线专家画出的散点图,可发现其趋势与对数曲线很相似,故对两变量进行相应变换。以上是结果变量火箭高度y和IgA浓度x经对数变换后产生的新变量x1之间进行直线回归分析的结果,给出了拟合的直线回归方程中的截距项和斜率的估计值,以及对它们与零的差别是否具有统计学意义进行假设检验的结果。可以看出,截距和斜率与零的差别均有统计学意义。因此,直线回归方程为:y=19.47272+17.15637

4、x。因x1=log(x),故y=19.47272+17.15637 log(x)以下是结果变量火箭高度y和IgA浓度x经倒数变换后产生的新变量y1和x2之间进行直线回归分析的结果。可以看出,截距和斜率与零的差别均有统计学意义。因此,直线回归方程为:y1=0.03122+0.02006x2。因x2=1/x,y1=1/y,故y=x/(0.03122+0.02006x)以上是结果变量火箭高度y和IgA浓度x经倒数变换后产生的新变量y2和x3之间进行直线回归分析的结果。可以看出,截距和斜率与零的差别均有统计学意义。因此,直线回归方程为:y2=2.95526+0.55655x3。因x3=Inx,y2=

5、Inx y,故y=exp(2.95526+0.55655Inx)2、比较上例三条回归曲线的拟合效果免疫球蛋白浓度x和火箭高度y的关系(1)程序:data nr3_2; /*命名将要建立的数据集为nr3_2*/input x y ; /*要输入变量为x、y,并且连续输入*/cards; /*直接输入数据,数据块开始*/y1=19.74512+17.90734*log10(x); y2=x/(0.03029*x+0.02029); y3=19.32481*x*0.53667; residual1=y1-y; residual2=y2-y; residual3=y3-y; ssrs1=residua

6、l1*2; ssrs2=residual2*2; ssrs3=residual3*2; cards; 0.2 7.6 0.4 12.3 0.6 15.7 0.8 18.2 1.0 18.7 1.2 21.4 1.4 22.6 1.6 23.8;run;symbol1 color=green value=dot;symbol2 color=red value=point line=1 interpol=spline;symbol3 color=blue value=point line=2 interpol=spline;symbol4 color=green value=point line=

7、3 interpol=spline;legend1 across=1 cborder=black label=none value=(实际值 对数曲线 双曲线 幂曲线) position=(bottom right inside) mode=protect;proc gplot data=nr3_2; plot y*x y1*x y2*x y3*x/haxis=0 to 1.6 by 0.4 vaxis=0 to 25 by 5 overlay legend=legend1;run;proc sql; create table test1 as select css(y) as total,s

8、um(ssrs1) as sum_resi1,sum(ssrs2) as sum_resi2,sum(ssrs3) as sum_resi3 from nr3_2;quit;data test; set test1; s1=sqrt(sum_resi1/(&n-2); s2=sqrt(sum_resi2/(&n-2); s3=sqrt(sum_resi3/(&n-2); r_square1=1-sum_resi1/total; r_square2=1-sum_resi2/total;r_square3=1-sum_resi3/total; run;proc print data=nr3_2;

9、run;proc print data=test noobs; run;(2)运行结果及其解释:下图是对数曲线、双曲线和幂函数曲线对上例免疫球蛋白浓度x和火箭高度y的关系拟合效果的展示图。以上是3条曲线对结果变量的拟合情况。其中,x,y分别代表原始资料中的原因变量与结果变量,residual1,residual,2,residual3分别表示对数曲线、双曲线和幂函数曲线拟合资料的残差,即估计值与真实值之差,ssrs1,ssrs2, ssrs3为对应的残差平方。 以上是衡量曲线拟合情况的几个统计量的值。其中,total为变量y的离均差平方和,sum_resi1,sum_resi2,sum_res

10、i3依次表示对数曲线、双曲线和幂函数曲线拟合资料的残差平方和, s1,s2,s3为对应的剩余标准差,r_square1,r_square,2,r_square3分别代表对应的相关系数。(3) CurveExpert的拟合用户模型: y=a*xbCoefficient Data:a =1.92550057763E+001b =4.94059120119E-001(4)总结:三个曲线回归方程所含参数个数相同,其拟合资料的残差平方和分别为1.64615,1.60966,4.50771。比较最大残差平方和4.50771与最小残差平方和1.60966,由于每个曲线回归方程中均有两个待估计参数,故其自由度

11、均为6。F=4.50771/1.60966=2.80,由F临界值表可知,F=2.805.82,所以残差平方和最大和最小的曲线回归方程拟合此资料的效果没有统计学差异,因而三个曲线回归方程拟合此资料的效果没有统计学差异。但是,由于双曲线回归方程对应的残差平方和1.61比其他两个曲线方程的小,故此资料采用双曲线来拟合效果更好。3、指数曲线直线化分析红铃虫产卵数y和温度x的关系(1)程序:data nr3_3; input x y; y1=log10(y);cards; 21 7 23 11 25 21 27 24 29 66 32 115 35 325 ;run; ods html;proc gpl

12、ot; plot y*x/haxis=21 to 35 by 2 vaxis=0 to 350 by 50; symbol value=dot;run;proc reg; model y1=x;run;(2)运行结果及其解释: 上图是根据原始资料绘制的产卵数和温度之间数据对用SAS程序运行得到的散点图,可发现其趋势与指数曲线很相似,故对产卵数进行以10为底的对数变换。Logistic模型: y=a/(1+b*exp(-cx)Coefficient Data:a =-4.44359029217E+002b =-7.26278315976E+003c =2.29376490358E-001上图是根

13、据原始资料绘制的产卵数和温度之间数据对用曲线专家画出的散点图,可发现其趋势与指数曲线很相似,故对产卵数进行以10为底的对数变换,该模型为logistic模型。由运行结果可以看出,结果变量产卵数y经对数变换后产生的新变量y1和温度x之间进行直线回归分析,截距和斜率与零的差别均有统计学意义。因此,直线回归方程为:y1=-1.67168+0.11814x4、比较上例两条条回归曲线的拟合效果红铃虫产卵数y和温度x的关系(1)程序:%let n=7; data nr3_4; input x y; y1=0.0213*10*(0.11814*x); residual1=y1-y; ssrs1=residu

14、al1*2; cards; 21 7 23 11 25 21 27 24 29 66 32 115 35 325 ;run;symbol1 color=green value=dot;symbol2 color=red value=point line=1 interpol=spline;legend1 across=1 cborder=black label=none value=( ) position=(bottom right inside) mode=protect;proc gplot data=nr3_4; plot y*x y1*x/haxis=21 to 35 by 2 va

15、xis=0 to 350 by 50 overlay legend=legend1;run;proc sql; create table test1 as select css(y) as total,sum(ssrs1) as sum_resi1 from nr3_4;quit;data test; set test1; s1=sqrt(sum_resi1/(&n-2); r_square1=1-sum_resi1/total;run;proc print data=nr3_4; run;proc print data=test noobs; run;(2)运行结果及其解释: 该图是指数曲线

16、y=0.0213100.11814x对上例资料的拟合效果展示图。 以下是所得指数曲线对结果变量的拟合情况。其中,x,y分别代表原始资料中的原因变量与结果变量,residual1表示指数曲线拟合资料的残差,即估计值与真实值之差,ssrs1为对应的残差平方。从其拟合资料的残差平方和1534.72、剩余标准差17.5198及相关指数0.98036这三个统计量的值可以看出,所得曲线对资料的拟合效果比较理想。5、指数曲线直线化分析某县年月累计麻疹的发病情况(1)程序:data nr3_5; input x y; y1=log(19.34-y)/y); cards; 1 0.279 2 0.920 3 2

17、.078 4 4.393 5 8.144 6 12.174 7 17.306 8 18.435 9 18.728 10 18.965 11 19.230 12 19.328 ;run;ods html;proc gplot; plot y*x/haxis=0 to 12 by 3 vaxis=0 to 20 by 2; symbol value=dot;run;proc reg; model y1=x;run;ods html close;(2)运行结果及其解释: 下图是根据原始资料绘制的麻疹累计发病率和月份之间数据对用sas程序运行得到的散点图,可发现其趋势近似S型,故对麻疹累计发病率进行l

18、ogistic变换。观察散点图,可发现下渐近线约为y=0,,上渐近线约为y=19.34,两条渐近线之间的距离约为19.34,所以取L=0,K=19.34,对其进行变量变换。下图是根据原始资料绘制的麻疹累计发病率和月份之间数据对用曲线专家画出的散点图,可发现其趋势近似S型,故对麻疹累计发病率进行logistic变换,该模型为Richards模型。Richards模型: y=a/(1+exp(b-cx)(1/d)Coefficient Data:a =1.91496505259E+001b =9.00929738629E+000c =1.44722142155E+000d =2.147820273

19、17E+000由运行结果可以看出,结果变量麻疹累计发病率y经logistic变换后产生的新变量y1和月份x之间进行直线回归分析,截距和斜率与零的差别均有统计学意义。因此,直线回归方程为:y1=5.09934-0.97293x。6、比较上例Logistic曲线拟合效果某县年月累计麻疹的发病情况(1)程序:%let n=12; data nr3_6; input x y; y1=19.34/(1+163.91369*exp(-0.97293*x); residual1=y1-y; ssrs1=residual1*2; cards; 1 0.279 2 0.920 3 2.078 4 4.393 5

20、 8.144 6 12.174 7 17.306 8 18.435 9 18.728 10 18.965 11 19.230 12 19.328 ;run;symbol1 color=green value=dot;symbol2 color=red value=point line=1 interpol=spline;legend1 across=1 cborder=black label=none value=( logistic) position=(bottom right inside) mode=protect;proc gplot data=nr3_6; plot y*x y1*x/haxis=0 to 12 by 3 vaxis=0 to 20 by 2 overlay legend=legend1;run;proc sql; create table test1 as select css(y) as total,sum(ssrs1) as sum_resi1 from nr3_6

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论