python使用log1p可帮助解决数值右偏问题

    在数据预处理时可以对偏度比较大的数据用log1p函数进行转化,使其更加服从高斯分布,此步处理可能会使我们后续的分类结果得到一个更好的结果;

 

    平滑处理很容易被忽略掉,导致模型的结果总是达不到一定的标准,同样使用逼格更高的log1p能避免复值的问题——复值指一个自变量对应多个因变量;
 

log1p的使用就像是将一个数据压缩到了一个区间,与数据的标准化类似。
 

举例用图像表示出来会更加清楚:


import numpy as np 
import matplotlib.pyplot as plt 
  
in_array = [1, 1.2, 1.4, 1.6, 1.8, 2] 
out_array = np.log1p(in_array) 
  
print ("out_array : ", out_array) 

可以看到log1p后数值都变小了

# Python程序显示log1p()函数的图形表示 
y = [1, 1.2, 1.4, 1.6, 1.8, 2] 
plt.plot(in_array, y, color = 'blue', marker = "*")   #蓝色线表示之前的图形
  
plt.plot(out_array, y, color = 'red', marker = "o") #红色线表示用log1xp修饰后的图像 

plt.title("numpy.log1p()") 
plt.xlabel("X") 
plt.ylabel("Y") 
plt.show()  

 

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值