简介

编辑

Box-Cox变换的一般形式为:

式中

  

为经Box-Cox变换后得到的新变量,

  

为原始连续因变量,

  

为变换参数。以上变换要求原始变量

  

取值为正,若取值为负时,可先对所有原始数据同加一个常数

  

使其

  

为正值,然后再进行以上的变换。对不同的

  

所作的变换不同。在

  

时该变换为对数变换,

  

时为倒数变换,而在

  

时为平方根变换。Box-Cox变换中参数

  

的估计有两种方法:(1)最大似然估计;(2)Bayes方法。通过求解

  

值,就可以确定具体采用哪种变换形式。

变换过程

编辑

Box-Cox变换是对回归因变量Y的如下变换:

在这里

  

是一个待定变换参数。对于不同的

  

,所作的变换也不相同,所以Box-Cox变换是一族变换,它包括了平方根变换(

  

),对数变换(

  

)和倒数变换(

  

)等常用变换,对因变量的n个观测值

  

,应用上述变换,可得变换后的向量

我们要确定变换参数

  

,使得

  

满足

即要求通过因变量的变换,使得变换过的向量

  

与回归自变量具有线性相依关系,误差也服从正态分布.误差各分量是等方差且相互独立,故Box-Cox变换是通过参数

  

的适当选择。达到对原来数据的“综合治理”,使其满足一个正态线性回归模型的所有假设条件。

用极大似然方法来确定

  

,由于

  

,故对固定的

  

  

  

的似然函数为

其中,

  

为变换的Jacobi行列式

  

固定时,

  

是不依赖于参数

  

  

的常数因子,

  

的其余部分关于

  

  

求导数,令其等于零,可求得

  

  

的极大似然估计

残差平方和为

对应的似然最大值为

该式为

  

的一元函数,通过求它的最大值来确定

  

,因为

  

是x的单调函数,问题可转化为求

  

的最大值,对式(3)求对数,略去与

  

无关的常数项,得

其中,

式(4)对Box-Cox变换在计算机上实现带来很大的方便,因为我们只要求出残差平方和

  

的最小值,就可以求出

  

的最大值,虽然很难找出使

  

达到最小值的

  

的解析表达式,但是对一系列的

  

给定值,通过最普通的求最小二乘估计的回归程序,很容易计算出对应的

  

,画出

  

关于

  

的曲线,可在图上近似地找出

  

达到最小值的

  

Box-Cox变换变换的具体步骤如下:
(1)对给定的

  

值,计算

  

,如果

  

,用式(6)计算,否则用式(7);

(2)利用式(5)计算残差平方和

  

(3)对一系列的

  

值,重复上述步骤,得到相应的残差平方和

  

的一串值,以

  

为横轴,作出相应的曲线,用直观的方法,找出使

  

达到最小值的点

  

(4)利用式(2),求出

  

意义

编辑

Box-Cox变换的一个显著优点是通过求变换参数

  

来确定变换形式,而这个过程完全基于数据本身而无须任何先验信息,这无疑比凭经验或通过尝试而选用对数平方根等变换方式要客观和精确。

Box-Cox变换的目的是为了让数据满足线性模型的基本假定,即线性、正态性及方差齐性,然而经Box-Cox变换后数据是否同时满足了以上假定,仍需要考察验证 [2]  。

Box-Cox变换的更多相关文章

  1. Kaggle比赛(二)House Prices: Advanced Regression Techniques

    房价预测是我入门Kaggle的第二个比赛,参考学习了他人的一篇优秀教程:https://www.kaggle.com/serigne/stacked-regressions-top-4-on-lead ...

  2. CSS3中文手册基础知识

    CSS3手册是学习CSS3的最佳文档,不管是自己写博客,还是买书,手册少不了.今天我给大家介绍一些CSS3有哪些分类及其使用. 具体参考:http://caibaojian.com/css3/ 上来进 ...

  3. SAS PROC MCMC example in R: Logistic Regression Random-Effects Model(转)

    In this post I will run SAS example Logistic Regression Random-Effects Model in four R based solutio ...

  4. QuantLib 金融计算——数学工具之随机数发生器

    目录 QuantLib 金融计算--数学工具之随机数发生器 概述 伪随机数 正态分布(伪)随机数 拟随机数 HaltonRsg SobolRsg 两类随机数的收敛性比较 如果未做特别说明,文中的程序都 ...

  5. stacking method house price in kaggle top10%

    整合几部分代码的汇总 隐藏代码片段 导入python数据和可视化包 导入统计相关的工具 导入回归相关的算法 导入数据预处理相关的方法 导入模型调参相关的包 读取数据 特征工程 缺失值 类别特征处理-l ...

  6. CSS学习笔记2-2d变换和过渡属性

    前言:今天又是一个周末,心情不错,趁着闲暇之余,把剩下来的CSS3学习的内容全部整理出来,练习用的源码也稍微整理了一下. 2D转换 transform:translate||rotate||scale ...

  7. 好吧,CSS3 3D transform变换,不过如此!

    一.写在前面的秋裤 早在去年的去年,我就大肆介绍了2D transform相关内容.看过海贼王的都知道,带D的家伙都不是好惹的,2D我辈尚可以应付,3D的话,呵呵,估计我等早就在千里之外被其霸气震晕了 ...

  8. css3 3D变换和动画

    3D变换和动画 建立3D空间,transform-style: preserve-3d perspective: 100px; 景深 perspective-origin:center center ...

  9. css3 过渡和2d变换——回顾

    1.transition 语法:transition: property duration timing-function delay; transition-property 设置过渡效果的css ...

  10. css3 3d变换和动画——回顾

    1.transform-style 属性指定嵌套原始是怎样在三维空间中呈现. 语法:transform-style: flat | preserve-3d flat 表示所有子元素在2D平面呈现. p ...

随机推荐

  1. proc伪文件系统 - 加载一个进程

    内核模块的编译方法及注意事项 Ubuntu内核(2.6.32) 2.6内核中,模块的编译需要配置过的内核源码:编译.链接后生成的内核模块后缀为.ko:编译过程首先会到内核源码目录下读取顶层的Makef ...

  2. mysql8的坑

    plugin caching_sha2_password could not be loaded 我在mac上用Sequel Pro连数据库的时候,会报出以上错误,这是应为8.0.11把身份认证插件改 ...

  3. safari 调试iPhone web页面

    safari设置-打开Safari偏好者设置,选中“高级菜单”,在页面最下方看到“在菜单中显示开发菜单”的复选框,在复选框内打钩,这样设置完毕就能在Safari菜单中看到开发菜单了 iPhone 设置 ...

  4. python之使用多个界定符分割字符串

    主要是正则的编写 mport re line = 'asdf fjdk; afed, fjek,asdf, foo' # \s 匹配任意空白符,正则意思:分隔符可以是逗号,分号或者是空格,并且后面紧跟 ...

  5. 2018-8-10-win10-UWP-button

    title author date CreateTime categories win10 UWP button lindexi 2018-08-10 19:16:53 +0800 2018-2-13 ...

  6. qfile读取txt文件

    QFile f("D:\\测试数据\\单波束数据\\灯浮.TGT"); if (!f.open(QIODevice::ReadOnly|QIODevice::Text))//打开指 ...

  7. VersionInformation.dwPlatformId == 2

    Result:=OSVI.dwPlatformId;  {  返回值:  为0表示为win3x系统;  为1表示为win9x系统;  为2表示为winNT;  为3表示为win2000系统;   }

  8. [转载]Ubuntu Server下配置UTF-8中文环境

    转载自:http://www.gaojinbo.com/ubuntu-server%E4%B8%8B%E9%85%8D%E7%BD%AEutf-8%E4%B8%AD%E6%96%87%E7%8E%AF ...

  9. 运行连接Oracle数据库时,Idea报错: Error : java 不支持发行版本5

    按照上面的截图步骤,一步步往下走,再运行程序时就不会报错了. 原文链接:https://blog.csdn.net/qq_22076345/article/details/82392236 感谢原文作 ...

  10. Dubbo---Multicast 注册中心---xml配置

    1.项目结构(maven项目) 2.dubbotest.pom <?xml version="1.0" encoding="UTF-8"?> < ...