本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。

以下文章来源于数据杂论,作者:Wpc7113

Python 数据分析入门案例讲解

https://www.bilibili.com/video/BV18f4y1i7q9/

1.标准化:去均值,方差规模化

Standardization标准化:将特征数据的分布调整成标准正态分布,也叫高斯分布,也就是使得数据的均值为0,方差为1.

标准化的原因在于如果有些特征的方差过大,则会主导目标函数从而使参数估计器无法正确地去学习其他特征。

标准化的过程为两步:去均值的中心化(均值变为0);方差的规模化(方差变为1)。

from sklearn import preprocessing
from sklearn.datasets import load_iris
iris = load_iris()
X, y = iris.data, iris.target
'''标准变换'''
scaler = preprocessing.StandardScaler().fit(X)
x_scaler=scaler.transform(X)

2. 最小-最大规范化

最小-最大规范化对原始数据进行线性变换,变换到[0,1]区间(也可以是其他固定最小最大值的区间)

min_max_scaler = preprocessing.MinMaxScaler()
x_train_minmax = min_max_scaler.fit_transform(X)

3.MaxAbsScaler

max_abs_scaler = preprocessing.MaxAbsScaler()
x_train_maxabs = max_abs_scaler.fit_transform(X)

4.RobustScaler:带有outlier的数据的标准化

transformer = preprocessing.RobustScaler().fit(X)
x_robust_scaler=transformer.transform(X)

5.QuantileTransformer 分位数变换

quantile_transformer = preprocessing.QuantileTransformer(random_state=0)
X_train_trans = quantile_transformer.fit_transform(X)

6.Box-Cox

Box-Cox变换是Box和Cox在1964年提出的一种广义幂变换方法,是统计建模中常用的一种数据变换,用于连续的响应变量不满足正态分布的情况。Box-Cox变换之后,可以一定程度上减小不可观测的误差和预测变量的相关性。Box-Cox变换的主要特点是引入一个参数,通过数据本身估计该参数进而确定应采取的数据变换形式,Box-Cox变换可以明显地改善数据的正态性、对称性和方差相等性,对许多实际数据都是行之有效。变化方式如下:

pt = preprocessing.PowerTransformer(method='box-cox', standardize=False)
pt.fit_transform(X)

7.规范化(Normalization)

规范化是将不同变化范围的值映射到相同的固定范围,常见的是[0,1],此时也称为归一化。

X_normalized = preprocessing.normalize(X, norm='l2')

8.独热编码

enc = preprocessing.OneHotEncoder(categories='auto')
enc.fit(y.reshape(-1,1))
y_one_hot=enc.transform(y.reshape(-1,1))
y_one_hot.toarray()

9.Binarizer二值化

binarizer = preprocessing.Binarizer(threshold=1.1)
binarizer.fit(X)
binarizer.transform(X)

10.多项式变换

poly =preprocessing.PolynomialFeatures(2)
poly.fit_transform(X)

11.自定义变换

transformer = preprocessing.FunctionTransformer(np.log1p, validate=True)
transformer.fit(X)
log1p_x=transformer.transform(X)

Python数据分析:常见的数据预处理方法相关推荐

  1. Python数据分析中的数据预处理:数据标准化

    [小白从小学Python.C.Java] [Python全国计算机等级考试] [Python数据分析考试必会题] ● 标题与摘要 Python数据分析中的 数据预处理:数据标准化 ● 选择题 以下关于 ...

  2. python必备基础代码-【Python基础系列】常见的数据预处理方法(附代码)

    本文简单介绍python中一些常见的数据预处理,包括数据加载.缺失值处理.异常值处理.描述性变量转换为数值型.训练集测试集划分.数据规范化. 1. 加载数据 1.1 数据读取 数据格式有很多,介绍常见 ...

  3. python数据预处理的代码_【Python基础系列】常见的数据预处理方法(附代码)

    ↑↑↑点击上方蓝字,回复资料,嘿嘿,10个G的惊喜 本文简单介绍python中一些常见的数据预处理,包括数据加载.缺失值处理.异常值处理.描述性变量转换为数值型.训练集测试集划分.数据规范化. 1. ...

  4. 常见的数据预处理方法总结

    0.概述 一般而言,样本的原始特征中的每一维特征由于来源以及度量单位不同,其特征取值的分布范围往往差异很大.当我们计算不同样本之间的欧氏距离时,取值范围大的特征会起到主导作用.这样,对于基于相似度比较 ...

  5. python数据预处理的方法_python中常用的九种数据预处理方法

    python中常用的九种预处理方法分享 本文总结的是我们大家在python中常见的数据预处理方法,以下通过sklearn的preprocessing模块来介绍; 1. 标准化(Standardizat ...

  6. python常用的数据预处理方法

    2019独角兽企业重金招聘Python工程师标准>>> 转载自:http://2hwp.com/2016/02/03/data-preprocessing/ 常见的数据预处理方法,以 ...

  7. sklearn中常用的数据预处理方法

    常见的数据预处理方法,以下通过sklearn的preprocessing模块来介绍; 1. 标准化(Standardization or Mean Removal and Variance Scali ...

  8. 数据预处理包括哪些内容python_常见的数据预处理--python篇

    做过数据分析的孩子一般都知道:数据预处理很重要,大概会占用整个分析过程50%到80%的时间,良好的数据预处理会让建模结果达到事半功倍的效果.本文简单介绍python中一些常见的数据预处理,包括数据加载 ...

  9. 机器学习中数据预处理方法

    在知乎上也看到了这个,不知道哪个是原创,这里粘上链接 https://zhuanlan.zhihu.com/p/51131210 前言 数据预处理的重要性? 熟悉数据挖掘和机器学习的小伙伴们都知道,数 ...

最新文章

  1. .NET的3C:CTS、CLS和CLR 以及 IL
  2. 在sdk中添加源文件_实用干货 | 一步一步教你在SpringBoot中集成微信刷卡支付
  3. python需要php吗-学python需要学linux吗
  4. 一张图看懂小程序全生态
  5. 【Git】pull遇到错误:error: Your local changes to the following files would be overwritten by merge:
  6. SAP Spartacus 关于列表点击focus Accessibility的需求
  7. javascript中的后退和刷新
  8. -[UIView hitTest:withEvent:] 方法总结
  9. 像素越多越好?像元的面积越小越好?
  10. 浏览器字体大小怎么调_音乐文件如何升降调
  11. qemu 的方式安装debian 模拟powerpc
  12. 多目标布谷鸟(MOCS)优化算法附Matlab代码
  13. GitHub 桌面版 v3.0 新特性「GitHub 热点速览 v.22.18」
  14. 摄氏度和开氏度的换算_摄氏度、华氏度和开氏度有何区别?
  15. html中video自动循环,HTML5视频自动循环播放方法
  16. xfs文件系统误删除文件恢复(testdisk工具)
  17. 04-Groovy-运算符
  18. Firefox插件的安装及使用方法(持续更新中)
  19. Java移除出界敌机,java实现飞机大战案例详解
  20. 关于Http请求GBK乱码转化的问题

热门文章

  1. 战争迷雾效果 第4章_真正的迷雾来了!
  2. 微信小程序有哪些传值(传递数据)方法
  3. Css 实现边界 凹陷 状态
  4. SpringBoot集成RabbitMQ-Fanout模式
  5. win10打印机共享
  6. mysql日期格式化 yyyymmdd_mysql中格式化日期详解
  7. 我有一个计算机梦想作文500,关于我有一个梦想的作文500字(通用3篇)
  8. Vue-router cannot read property _c of undefined
  9. 生成对抗网络GANCycleGAN
  10. java安卓模拟器和电脑通信_java-两个Android模拟器之间的通信