0、Xmind

1、data的特征预处理


1、what is 特征处理?
统计方法,要求的data

2、 特征预处理的方式

3、sklearn.preprocessing
there are all 预处理 method
2、归一化
1. what is 归一化?
原始data -----变换、映射----> [0,1]

2. 公式


计算过程


3. sklearn.preprocessing.MinMaxScalar
sklearn.preprocessing.MinMaxScalar
scalar缩放
语法

步骤

input:二维array
代码
from sklearn.preprocessing import MinMaxScaler # 归一化
def minmaxSclar():
"""
归一化处理
:return: None
"""
# mm = MinMaxScaler()
mm = MinMaxScaler(feature_range=(2,3))
data = mm.fit_transform([[90,2,10,40],[60,4,15,45],[75,3,13,46]])
print(data)
if __name__ == '__main__':
minmaxSclar()


4.案例:约会对象data

三个特征同等重要的时候,进行归一化


目的:
使得某一个特征对result不会造成更大的影响
5.异常点
![]()


6. 归一化总结
鲁棒性较差 (稳定性不行)
传统精确小data场景 (基本无)

3、标准化
1、 what is 标准化?
原始data ----> 均值为0,方差为1

2、公式



3、异常点
对mean影响不大
方差为0,所有这个特征的值基本一样


4、scikit-learn.preprocessing.StandardScalar
standard 标准化 scalar 缩放
data聚集zai 均值为0 方差为1的附近
语法

步骤
input 二维array

代码
from sklearn.preprocessing import StandardScaler # 标准化
def stand():
"""
标准化缩放
:return:None
"""
std = StandardScaler()
data = std.fit_transform([[ 1., -1., 3.],[ 2., 4., 2.],[ 4., 6., -1.]])
print(data)
if __name__ == '__main__':
stand()

5.总结

4、缺失值
1.如何处理数据中的缺失值?方法

2.sklearn.preprocessing.Imputer
语法

missing_values 缺失值为空值
strategy 填补策略
axis 1/0 行/列

流程

代码
import numpy as np
from sklearn.preprocessing import Imputer # 缺失值
def im():
"""
缺失值处理
:return: None
"""
# NaN,nan 空值
im = Imputer(missing_values="NaN",strategy="mean",axis=0)
data = im.fit_transform([[1, 2], [np.nan, 3], [7, 6]])
print(data)
return None
if __name__ == '__main__':
im()

3.关于np.nan(np.NaN)

来源:oschina
链接:https://my.oschina.net/u/4335973/blog/3571880