美文网首页科研钥匙
数据处理III:无量纲化

数据处理III:无量纲化

作者: Franchen | 来源:发表于2019-02-19 20:48 被阅读107次

下列data数据来源Kaggle的Titanic题目

  • 特征的规格不一样,不能够放在一起比较。
  • 无量纲化可将不同规格的数据转化为同一规格的数据。
# 测试数据:
na = np.asarray([
  [1., 10., -100.],
  [2., 20., -200.],
  [3., 30., -300.]
])

标准化:StandardScaler

前提:特征值服从正态分布。

from sklearn.preprocessing import StandardScaler
print StandardScaler().fit_transform(na)

[[-1.22474487 -1.22474487  1.22474487]
 [ 0.          0.          0.        ]
 [ 1.22474487  1.22474487 -1.22474487]]
data[['Age', 'Fare']] = StandardScaler().fit_transform(data[['Age', 'Fare']])

# 或者
data['Age_scaled'] = scaler.fit_transform(data['Age']) # 年龄
data['Fare_scaled'] = scaler.fit_transform(data['Fare']) # 票价

由于版本不同,有时传入1维数组时会报错:Expected 2D array, got 1D array instead,我们可以暂用data.Age.values.reshape(-1,1)进行处理。

data['Age_scaled'] = scaler.fit_transform(data['Age'].values.reshape(-1,1))
data['Fare_scaled'] = scaler.fit_transform(data['Fare'].values.reshape(-1,1))

numpy.reshape

Expected 2D array, got 1D array instead


区间放缩

# MinMaxScaler = (x - X.min) / (X.max - X.min)

from sklearn.preprocessing import MinMaxScaler
print MinMaxScaler().fit_transform(na)

[[ 0.   0.   1. ]
 [ 0.5  0.5  0.5]
 [ 1.   1.   0. ]]
# MaxAbsScaler = x / np.absolute(X).max

from sklearn.preprocessing import MaxAbsScaler
print MaxAbsScaler().fit_transform(na)

[[ 0.33333333  0.33333333 -0.33333333]
 [ 0.66666667  0.66666667 -0.66666667]
 [ 1.          1.         -1.        ]]

归一化:Normalizer

归一化与上两者的区别

  • 上两者按特征矩阵的处理数据,归一化按特征矩阵的处理数据;
  • 上两者让列与列进行向量运算时具有同一标准,归一化让行与行进行向量运算时具有统一标准。
from sklearn.preprocessing import Normalizer
print Normalizer().fit_transform(na)

[[ 0.00994988  0.09949879 -0.99498793]
 [ 0.00994988  0.09949879 -0.99498793]
 [ 0.00994988  0.09949879 -0.99498793]]

相关文章

  • 大数据学习导图

    数据获取 数据获取与查看 数据处理 数据处理I:缺失值填补 数据处理II:数据转换 数据处理III:无量纲化 特征...

  • 数据处理III:无量纲化

    下列data数据来源Kaggle的Titanic题目 特征的规格不一样,不能够放在一起比较。 无量纲化可将不同规格...

  • 简单的数据预处理和特征工程

    1.无量纲化:最值归一化、均值方差归一化及sklearn中的Scaler 无量纲化使不同规格的数据转换到同一规格 ...

  • 可能是最全的数据标准化教程(附python代码)

    什么是数据标准化(归一化) 数据标准化(归一化)处理是数据挖掘的一项基础工作,不同评价指标往往具有不同的量纲和量纲...

  • sklearn学习 — 归一化

    线性归一化 数据标准化(归一化)处理是数据挖掘的一项基础工作,不同评价指标往往具有不同的量纲和量纲单位,这样的情况...

  • 数据预处理

    总 数据预处理包括数据清洗、无量纲化、特征分桶、统计变换和特征编码等步骤, 数据清洗 无量纲化 说明 一般而言,原...

  • 支持向量机

    1. 归一化什么鬼? 将数映射到0到1区间,或者把有量纲量转化为无量纲量。 2. 向量的归一化/标准化 就是向量除...

  • 机器学习之归一化

    数据标准化(归一化)处理是数据挖掘的一项基础工作,不同评价指标往往具有不同的量纲和量纲单位,这样的情况会影响到数据...

  • 数据归一化方法

    数据标准化(归一化)处理是数据挖掘的一项基础工作,不同评价指标往往具有不同的量纲和量纲单位,这样的情况会影响到数据...

  • 再谈归一化和标准化的区别

    为什么要做归一化或者标准化? 主要是为了调整样本数据每个维度的量纲,让每个维度数据量纲相同或接近。 为什么要调整量...

网友评论

    本文标题:数据处理III:无量纲化

    本文链接:https://www.haomeiwen.com/subject/qjqqyqtx.html