stats.boxcox()函数详解

官方文档

scipy.stats.boxcox(x, lmbda=None, alpha=None)

返回一个通过Box-Cox次方转换的正的数据集

参数数据类型意义
xndarray输入数组。1维
lmbda{None, scalar}, optional如果lmbda不是None,对这个值进行转换
如果lmbda是None,找到最大化对数似然函数的lambda并将其返回为第二个输出参数
alpha{None, float}, optional如果alpha不是None,返回lmbda的置信区间作为第三个输出参数。必须是0.0~1.0
返回数据类型意义
boxcoxnndarrayBox-Cox次方转换数组
maxlogfloat, optional如果lmbda参数是None,返回的第二个参数是最大化对数似然函数的lambda
(min_ci, max_ci)tuple of float, optional如果lmbda参数是None并且alpha不是None,这个返回的浮点数元组表示在给定alpha下最小和最大置信限制

boxcox要求输入数据都是正的。转换公式为
y = ( x ∗ ∗ l m b d a − 1 ) / l m b d a    ,    f o r    l m b d a > 0        l o g ( x ) ,    f o r    l m b d a = 0 y = (x**lmbda - 1)/lmbda\; , \; for \; lmbda>0\\ \; \; \; log(x), \; for \; lmbda=0 y=(xlmbda1)/lmbda,forlmbda>0log(x),forlmbda=0

  • 意义解释:Box-Cox变换

    做回归分析时,通常假设回归方程的残差具有有齐性,即等方差。如果残差不满足齐性,即出现异方差(残差发散),此时就可以通过做Box-Cox变换实现回归方程残差齐性。

    Box-Cox变换实现两项工作:做变换、确定lambda的值(也就是boxcox()函数返回的前两个参数)

    boxcox是将数据分布正态化,使其更加符合后续对数据分布的假设。

    boxcox可以降低skewness值,达到接近正态分布的目标。


  • Reference

  1. box-cox变换
  2. R语言Box-Cox变换与多重共性线
  3. 数据挖掘中常用的数据变换方法总结
  • 3
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值