数据的特征预处理:
通过特定的统计方法(数学方法),将数据转换成算法要求的数据
数值型的数据:
标准缩放:
- 归一化:特点:通过对原始数据进行变换把数据映射到默认为[0, 1]之间。数据特征同等重要的时候,进行归一化,使得一个特征对最终结果不会造成太大影响。注意在特定场景下最大值最小值是变化的,另外最大值最小值很容易受到异常点影响,所以这种方法鲁棒性较差,只适合传统精确小数据场景
- 标准化:特点:通过对原始数据进行转变把数据变换到均值为0,方差为1范围内。如果出现异常点,由于具有一定量的数据,少量异常点对于平均值的影响不大,只会让方差越来越大。处理后每列所有数据都聚集在均值0,标准差1附近。在样本足够多情况下比较稳定,适合大数据
- 缺失值:删除(如果某列或某行缺失值达到一定量,则放弃整列或整行);插补(可以通过缺失值每行或每列的平均值、中位数来填充)
sklearn特征处理API:
sklearn.preprocessing
归一化API:
sklearn.preprecessing.MinMaxScaler
from sklearn.preprocessing import MinMaxScaler
def mm():
"""
归一化处理
"""
mm = MinMaxScaler()
data = mm.fit_transform()
print(data)
return None
标准化API:
sklearn.preprocessing.StandardScaler
from sklearn.preprocessing import StandardScaler
def stand():
"""
标准化处理
"""
std = StandardScaler()
data = std.fit_transform()
print(data)
return None
缺失值:
import numpy as np
def im():
"""
缺失值处理
"""
im = Imputer(missing_values = "NaN", strategy = "mean", axis = 0) # 0是列,1是行
data = im.fit_transform()
print(data)
return None