Python数据分析:常见的数据预处理方法

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

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

Python 数据分析入门案例讲解

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

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

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

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

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

from sklearn import preprocessingfrom sklearn.datasets import load_irisiris = 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)
(0)

相关推荐

  • 使用sklearn做自然语言处理-1

    今天我们以20newsgroups数据集为例,借助sklearn库来进行话题分类(文本分类).在本篇教程中涉及到: 读取数据 数据预处理 特征抽取 模型评估 1. 读取数据 为了便于分析,已将数据集保 ...

  • AI人工智能 预处理数据

    人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人.语言识别.图像识别.自然语言处理和专家系统等.人工智能从诞生以来 ...

  • scikit-learn 中 OneHotEncoder 解析

    概要 在 sklearn 包中,OneHotEncoder 函数非常实用,它可以实现将分类特征的每个元素转化为一个可以用来计算的值.本篇详细讲解该函数的用法,也可以参考官网 sklearn.prepr ...

  • 6.3. Preprocessing data

    6.3. Preprocessing data The sklearn.preprocessing package provides several common utility functions ...

  • 使用scikit-learn对数据进行预处理

    数据的质量决定了模型的上限,在真实的数据分析中,输入的数据会存在缺失值,不同特征的取值范围差异过大等问题,所以首先需要对数据进行预处理. 预处理是数据挖掘的第一步,该步骤实际上包含了很多不同的操作手法 ...

  • 数据分析:基于glmnet的Cox

    glmnet提供了LASSO或ridge regression的Cox-PH分析模式,用于研究预测变量与生存时间的关系. 加载数据 library(glmnet)library(survival)da ...

  • 实现特征缩放和特征归一化的方法有哪些?(附代码)

    本文将为你介绍实现特征缩放和特征归一化的方法. 1. 特征缩放 在随机梯度下降(stochastic gradient descent)算法中,特征缩放有时能提高算法的收敛速度. 1.1 什么是特征缩 ...

  • 应用PCA降维加速模型训练

    本文将使用主成分分析(Principal Component analysis)实现无监督数据降维这一任务.当然PCA降低维度还可以帮助我们可视化,例如高维度数据是无法可视化,但是当我们将数据降低到三 ...

  • sklearn机器学习笔记:数据预处理与特征工程

    这是一篇纯学习笔记,感觉回到了开发,难道要成为调包侠了吗? 数据挖掘5大流程 获取数据 数据预处理 数据预处理是从数据中检测,纠正或删除损坏,不准确或不适用于模型的记录的过程可能面对的问题有:数据类型 ...

  • Python数据分析库有哪些?常见分类!

    众所周知,Python前景好.需求量大.薪资高.就业岗位多,除了基本的开发工作之外,还可以从事人工智能.数据分析.网络爬虫等岗位.那么说起数据分析,你知道Python常用数据分析库有哪些吗?我们一起来 ...

  • Python 导入 8 种数据文件的方法

    数据分析过程中,需要对获取到的数据进行分析,往往第一步就是导入数据.导入数据有很多方式,不同的数据文件需要用到不同的导入方式,相同的文件也会有几种不同的导入方式.下面总结几种常用的文件导入方法. 大多 ...

  • 大数据知识合集之预处理方法

    数据预处理方法主要有: 数据清洗.数据集成.数据规约和数据变换. 1.数据清洗 数据清洗(data cleaning) :是通过填补缺失值.光滑噪声数据,平滑或删除离群点,纠正数据的不一致来达到清洗的 ...

  • Python数据分析,办公自动化,如何数据分组与透视?

    数据分组是对相同类别的数据进行汇总,而数据透视表是通过对行或列的不同组合对数据进行汇总,所使用的汇总方法有求和.计数.平均值.标准差等,本文使用Python对数据进行数据分组和数据透视,下面一起来学习 ...

  • Python 保存数据的方法(4种方法)

    Python 保存数据的方法: open函数保存 使用with open()新建对象 写入数据(这里使用的是爬取豆瓣读书中一本书的豆瓣短评作为例子) ? 1 2 3 4 5 6 7 8 9 10 11 ...

  • Python制作一个数据预处理小工具,非常实用(拿走不谢)

    我们平常使用Python进行数据处理与分析时,在import完一大堆库之后 ,就是对数据进行预览,查看数据是否出现了缺失值.重复值等异常情况,并进行处理. 本文将结合GUI工具PySimpleGUI, ...

  • Python数据分析实战:解密数据分析师的薪资和需求

    本文将以数据分析的方式对这个行业展开调研,尽可能让正在从事或有兴趣想加入这个行业的小伙伴们对于当前数据行业的就业环境有更深入的了解和认识. 项目流程 · 数据获取:访问前程无忧官网,找出需用作数据分析 ...

  • 这个20G的单细胞项目数据和代码的压缩包有什么(python数据分析典范)

    近日,微信群里的宝藏唐医生在群里甩了一个百度云链接,我瞅了一眼,居然是20G,而且命名超级诡异,是9044782e-cb96-4733-8a4f-bf42c21399e6_v1.0.zip. 差点误解 ...

  • 数据分析之数据预处理、分析建模、可视化

    数据分析之数据预处理、分析建模、可视化