BoxCox变换及其在STATA软件中的实现

上传人:油条 文档编号:1234715 上传时间:2017-06-04 格式:DOC 页数:7 大小:28KB
返回 下载 相关 举报
BoxCox变换及其在STATA软件中的实现_第1页
第1页 / 共7页
BoxCox变换及其在STATA软件中的实现_第2页
第2页 / 共7页
BoxCox变换及其在STATA软件中的实现_第3页
第3页 / 共7页
BoxCox变换及其在STATA软件中的实现_第4页
第4页 / 共7页
BoxCox变换及其在STATA软件中的实现_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《BoxCox变换及其在STATA软件中的实现》由会员分享,可在线阅读,更多相关《BoxCox变换及其在STATA软件中的实现(7页珍藏版)》请在金锄头文库上搜索。

1、1BoxCox 变换及其在 STATA 软件中的实现【摘要 】 目的:向医疗卫生领域的一线工作者介绍BoxCox 变换。方法:利用 STATA 软件包拟合 BoxCox 回归模型。结果:通过使用示例数据库进行拟合,成功的进行了 BoxCox变换,并进行了回归分析。结论:使用 BoxCox 变换是解决应变量不符合正态分布的重要方法,而 STATA 软件提供了进行BoxCox 变换的可行之道。 【关键词】 BoxCox 变换STATA 软件boxcox 命令1 BoxCox 变换简介在统计工作中,特别是在一般线性模型的运用中,经常出现连续型应变量不符合正态分布的情况(在线性模型中对自变量没有类似的

2、要求1),此时如直接使用线性模型,显然是不合适的,而通常的解决办法有两种:一是对应变量 y 进行变量变换;二是使用广义线性模型。本研究讨论前者。对应变量 y 进行变量变换有许多方法,如倒数变换、指数变换等,2而这些变换都可以通过一个公式而统一起来,这就是 Box 和 Cox在 1964 年提出的 BoxCox 变换,其形式为 2:y()=y-1, if 0logy, if =0 显然,该变换在 =0 时为对数变换, =-1 时为倒数变换,而在 =0.5 时为平方根变换 3 。 BoxCox 变换还有一个扩展公式: y()=(y+a)-1, if 0log(y+a), if =0此时的 a 是为

3、了使 y+a0。无论是基本式还是扩展式,真正需要估计的只有一个参数 (因为 a 的取值非常明显),而对 的估计,在 Box 和 Cox 论文中采用了两种方法,其一是最大似然估计,其二是 Bayes 方法。但对于一般的用户而言,两种方法的理论和推证过程都可以不管,最重要的是如何在实践中运用,这也是本研究所要重点关注的。如何在实践中完成 BoxCox 变换呢?最直接的当然是使用公式,但最简单的还是使用相关的统计软件。现在我们就用较流行的统计软件 STATA 来实现 BoxCox 变换过程,由于 STATA7.0 以后的版本和以前的版本在变换命令的使用上有很大的不同,故本研究分别进行表述。2 示例一

4、:STATA6.0 软件的实现过程3为了说明问题,我们使用一个叫 auto 的数据库进行示例,这个数据库来自 1974 年 4 月美国的消费报告和美国 EPA 的燃料消耗统计4 ,我们的任务是研究汽车时速 (mpg)与车重(weight) 和价格(price)之间的关系。作为应变量的 mpg 经检验不符合正态分布。在 STATA6.0 软件中有直接的命令可供调用,其命令的基本格式为5:Boxcox y x1 x2 x3,g(y1)这里,y 为应变量,xi 表示的是自变量,y1 为进行转换后生成的新变量,其命令名称 boxcox,此处 STATA 只认为最靠近命令的变量为应变量,而其它的变量则被

5、认为是自变量。如果要继续进行BoxCox 回归,则在运行 boxcox 命令后紧接着运行 regress 命令从而得到回归的结果。下面我们来看实例。2.1 命令Boxcox mpg weight price, g(y1)Regress2.2 结果2.2.1 BoxCox 变换结果4经过迭代,程序计算出 值( 即 L)为-0.7618,并对 L 进行了检验。2.2.2 BoxCox 回归结果2.2.3 不进行变量变换而直接进行回归分析结果2.2.4 变量在 BoxCox 变换前后正态性的检验结果从表 4 可见原来不符合正态分布的 mpg 现在符合了(见 y1的检验),且对比结果表 2 和表 3

6、就会发现,两者的结果是有差异的,进行了应变量变换后的 BoxCox 回归的决定系数要高于普通的回归过程,且变量 price 也变得有意义了。表 1 BoxCox 变换结果(略)表 2 BoxCox 回归结果(略)表 3 直接进行回归分析结果(略)表 4 变量在 BoxCox 变换前后正态性的检验结果(略)3 示例二:STATA7.0 软件的实现过程实例同示例一。在 STAT7.0 软件中也有直接的命令可供调用,其命令的基本格式为6:Boxcox y x1 x2 x3, lrtest注意,此处不能再如 6.0 版那样生成新变量,另外,此时命令运5行的结果已经包含了 BoxCox 回归,所以在 6

7、.0 中的 regress 命令也被取消了。而 lrtest 的意义是对回归系数进行检验。下面我们来看实例。3.1 命令Boxcox mpg weight price, lrtest3.2 结果3.2.1 BoxCox 变换结果表 5 BoxCox 变换结果经过迭代,程序计算出 值( 注意:这里是 theta 值)为-0.7569,并给出了其可信区间。3.2.2 BoxCox 回归结果这里的检验结果与 6.0 版的结果基本相同。3.2.3 对 值检验这部分的内容与表 1 中的内容类似,只不过这里是对 theta 进行6的检验。表 6 BoxCox 回归结果(略)表 7 对 值检验结果(略)综合

8、两个版本,虽然在命令格式和最后的结果输出上都有很大的差异,但是其进行 BoxCox 变换并进行回归的本质是一样的。4 小结使用 BoxCox 变换一般都可以保证将连续型数据进行成功的正态变换,只是在二分变量或较少水平的等级变量的情况下,才不能成功进行2 ,如果出现这样的情况,应该考虑直接使用广义线性模型,如 Logistics 回归来解决。而 STATA 软件是解决 BoxCox变换的一个可行之道,但在应用中要注意版本的不同。【参考文献】1 王济川,郭志刚 .Logistic 回归模型方法与应用.北京:高等教育出版社,2001,3.2 Pengfei Li. BoxCox Transformation: An Overview. Department of Statistics.University of Connecticut, 2005.3 陈峰.医用多元统计分析方法.北京:中国统计出版社,72000,131.4 王建民,编译.Stata 2.05 版软件使用手册.中国预防医学科学院(内部资料 ),1993,21.5 stata co.stata 7.0 uesr manual, 2000.6 stata co.stata 7.0 uesr manual, 1999.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 大学论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号