预处理的几种方法:标准化、数据最大最小缩放处理、正则化、特征二值化和数据缺失值处理。

知识回顾:

p-范数:先算绝对值的p次方,再求和,再开p次方。

数据标准化:尽量将数据转化为均值为0,方差为1的数据,形如标准正态分布(高斯分布)。

标准化(Standardization)

公式为:(X-X_mean)/X_std 计算时对每个属性/每列分别进行。

将数据按其属性(按列进行)减去其均值,然后除以其方差。最后得到的结果是,对每个属性/每列来说所有数据都聚集在0附近,方差值为1。

sklearn中preprocessing库里面的scale函数使用方法:

sklearn.preprocessing.scale(X, axis=0, with_mean=True, with_std=True, copy=True)

根据参数不同,可以沿任意轴标准化数据集。

参数:

  • X:数组或者矩阵
  • axis:int类型,初始值为0,axis用来计算均值和标准方差。如果是0,则单独的标准化每个特征(列),如果是1,则标准化每个观测样本(行)。
  • with_mean:boolean类型,默认为True,表示将数据均值规范到0。
  • with_std:boolean类型,默认为True,表示将数据方差规范到1。

范例:假设现在构造一个数据集X,然后想要将其标准化。

方法一:使用sklearn.preprocessing.scale()函数

方法说明:

  • X.mean(axis=0)用来计算数据X每个特征的均值;
  • X.std(axis=0)用来计算数据X每个特征的方差;
  • preprocessing.scale(X)直接标准化数据X。

方法二:sklearn.preprocessing.StandardScaler类

sklearn.preprocessing.StandardScaler(copy=True, with_mean=True, with_std=True)

scaler = preprocessing.StandardScaler()
X_scaled = scaler.fit_transform(X)

scaler = preprocessing.StandardScaler().fit(X)
X_scaled = scaler.transform(X)

上面两段代码等价。

转换器(Transformer)主要有三个方法:

fit():训练算法,拟合数据

transform():标准化数据

fit_transform():先拟合数据,再标准化。

sklearn preprocessing (预处理)的更多相关文章

  1. 【sklearn】数据预处理 sklearn.preprocessing

    数据预处理 标准化 (Standardization) 规范化(Normalization) 二值化 分类特征编码 推定缺失数据 生成多项式特征 定制转换器 1. 标准化Standardization ...

  2. sklearn学习笔记(一)——数据预处理 sklearn.preprocessing

    https://blog.csdn.net/zhangyang10d/article/details/53418227 数据预处理 sklearn.preprocessing 标准化 (Standar ...

  3. Python数据预处理(sklearn.preprocessing)—归一化(MinMaxScaler),标准化(StandardScaler),正则化(Normalizer, normalize)

      关于数据预处理的几个概念 归一化 (Normalization): 属性缩放到一个指定的最大和最小值(通常是1-0)之间,这可以通过preprocessing.MinMaxScaler类实现. 常 ...

  4. sklearn preprocessing 数据预处理(OneHotEncoder)

    1. one hot encoder sklearn.preprocessing.OneHotEncoder one hot encoder 不仅对 label 可以进行编码,还可对 categori ...

  5. sklearn数据预处理-scale

    对数据按列属性进行scale处理后,每列的数据均值变成0,标准差变为1.可通过下面的例子加深理解: from sklearn import preprocessing import numpy as ...

  6. sklearn数据预处理

    一.standardization 之所以标准化的原因是,如果数据集中的某个特征的取值不服从标准的正太分布,则性能就会变得很差 ①函数scale提供了快速和简单的方法在单个数组形式的数据集上来执行标准 ...

  7. Scikit-learn Preprocessing 预处理

    本文主要是对照scikit-learn的preprocessing章节结合代码简单的回顾下预处理技术的几种方法,主要包括标准化.数据最大最小缩放处理.正则化.特征二值化和数据缺失值处理. 数学基础 均 ...

  8. 数据规范化——sklearn.preprocessing

    sklearn实现---归类为5大类 sklearn.preprocessing.scale()(最常用,易受异常值影响) sklearn.preprocessing.StandardScaler() ...

  9. sklearn 数据预处理1: StandardScaler

    作用:去均值和方差归一化.且是针对每一个特征维度来做的,而不是针对样本. [注:] 并不是所有的标准化都能给estimator带来好处. “Standardization of a dataset i ...

随机推荐

  1. Doing Homework HDU - 1074

    Ignatius has just come back school from the 30th ACM/ICPC. Now he has a lot of homework to do. Every ...

  2. PHP 支付类库, cURL开源HTTP类库

    未做任何测试 支付类库地址:http://doc.yurunsoft.com/PaySDK cURL开源HTTP类库地址:http://doc.yurunsoft.com/YurunHttp/1

  3. jackson/fastjson、mybatis、mysql date/datatime/timestamp、java Date/Timestamp关系详解

    jackson/fastjson序列化/反序列化: 默认情况下,jackson/fastjson将java Date/Timestamp类型序列化为时间戳,也就是1970年1月1日0点以来的毫秒数.如 ...

  4. py4CV例子2.5车牌识别和svm算法重构

    1.什easypr数据集:  ) ) ] all_label_list = temp[:, ] n_sample = , ) matcher = cv2.FlannBasedMatcher(flann ...

  5. Codeforces 700B Connecting Universities - 贪心

    Treeland is a country in which there are n towns connected by n - 1 two-way road such that it's poss ...

  6. Bootstrap3基础 btn-xs/sm... 按钮的四种大小

      内容 参数   OS   Windows 10 x64   browser   Firefox 65.0.2   framework     Bootstrap 3.3.7   editor    ...

  7. eMMC之分区管理、总线协议和工作模式【转】

    本文转载自:https://blog.csdn.net/u013686019/article/details/66472291 一.eMMC 简介 eMMC 是 embedded MultiMedia ...

  8. bzoj4709 柠檬 单调栈,DP,斜率优化

    目录 前言吐槽 思路 错误 代码 /* 前言吐槽 我真的不知道是咋做的 不过大约就是栈的斜率优化 哪位大佬见识广,给看看吧(乞讨) 思路 s是值等于a[i]的前缀和 转移方程$f[i]=max(f[i ...

  9. SpringBoot 注解调用Redis缓存

    注解代码: import java.lang.annotation.Documented; import java.lang.annotation.ElementType; import java.l ...

  10. JVM启动参数大全

    java启动参数共分为三类: 其一是标准参数(-),所有的JVM实现都必须实现这些参数的功能,而且向后兼容: 其二是非标准参数(-X),默认jvm实现这些参数的功能,但是并不保证所有jvm实现都满足, ...