简介

编辑

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. linux执行wget url时提示“无法建立 SSL 连接”

    linux执行wget url时提示“无法建立 SSL 连接” 原因: wget在使用HTTPS协议时,默认会去验证网站的证书,而这个证书验证经常会失败 解决方案: 1.加上参数“--no-check ...

  2. Redis事务 和 pipleline

    1.reidis事务 Redis 事务可以一次执行多个命令, 并且带有以下三个重要的保证: 批量操作在发送 EXEC 命令前被放入队列缓存. 收到 EXEC 命令后进入事务执行,事务中任意命令执行失败 ...

  3. Node.js中的fs文件系统

    fs.stat 检测是文件还是目录 fs.mkdir 创建目录 fs.writeFile 创建写入文件 fs.appendFile 追加文件 fs.readFile 读取文件 fs.readdir 读 ...

  4. MySQL索引与事务

    MySQL索引与事务 链接:https://pan.baidu.com/s/1ANGg3Kd_28BzQrA5ya17fQ 提取码:ekpy 复制这段内容后打开百度网盘手机App,操作更方便哦 1.索 ...

  5. 【Luogu】【关卡2-14】 树形数据结构(2017年10月)【AK】

    任务说明:由一个根节点分叉,越分越多,就成了树.树可以表示数据之间的从属关系 P1087 FBI树 给一个01字符串,0对应B,1对应I,F对应既有0子节点又有1子节点的根节点,输出这棵树的后序遍历. ...

  6. mysql莫名报"unknown column ... in 'on clause'"

    今天遇见个会诡异的问题 一个web程序本地调试的好好的,结果发布到服务器上程序就报错了,报"unknown column ... in 'on clause'",网上搜了下,说是m ...

  7. day08 python文件操作

    day08 python   一.文件操作     1.文件操作的函数         open(文件名, mode=模式, encoding=字符集)       2.模式: r, w, a, r+ ...

  8. java多线程面试题选择题大全含答案

    v java多线程面试题选择题大全含答案 java多线程面试题选择题大全含答案 1.下面程序的运行结果()(选择一项)public static void main(String[] args) {T ...

  9. python 中的内置高级函数

    1.map(function,iterable) map是把迭代对象依次进行函数运算,并返回. 例子: map返回的十分map对象,需要list()函数转化. 2.exec()函数 执行储存在字符串或 ...

  10. Dynamic partition strict mode requires at least one static partition column.

    https://blog.csdn.net/huobumingbai1234/article/details/81099856