初识人工智能(二):机器学习(二):sklearn数据特征预处理
程序员文章站
2022-06-28 18:34:34
1. sklearn数据特征预处理 通过特定的统计方法(数学方法)将数据转换成算法要求的数据。 数值型数据:标准缩放: 归一化 标准化 类别型数据: one-hot编码 时间类型: 时间的切分 sklearn特征处理的API为:sklearn.preprocessing。 1.1 归一化 特点:通过 ......
1. sklearn数据特征预处理
通过特定的统计方法(数学方法)将数据转换成算法要求的数据。
数值型数据:标准缩放:
- 归一化
- 标准化
类别型数据:
- one-hot编码
时间类型:
- 时间的切分
sklearn特征处理的api为:sklearn.preprocessing。
1.1 归一化
特点:通过对原始数据进行变换把数据映射到(默认为[0,1])之间。
公式:
注:作用于每一列,max为一列的最大值,min为一列的最小值,那么x’’为最终结果,mx,mi分别为指定区间值默认mx为1,mi为0。
sklearn归一化api:sklearn.preprocessing.minmaxscaler。
minmaxscaler语法:
minmaxscalar(feature_range=(0,1)…)
- 每个特征缩放到给定范围(默认[0,1])
- minmaxscalar.fit_transform(x)
- x:numpy array格式的数据[n_samples,n_features]
- 返回值:转换后的形状相同的array
from sklearn.preprocessing import minmaxscaler def mm(): """ 归一化处理 :return: none """ mm = minmaxscaler(feature_range=(2, 3)) data = mm.fit_transform([[90,2,10,40],[60,4,15,45],[75,3,13,46]]) print(data) return none if __name__ == "__main__": mm()
运行结果:
1.2 归一化案例:约会对象数据
相亲约会对象数据,这个样本时男士的数据,三个特征,玩游戏所消耗时间的百分比、每年获得的飞行常客里程数、每周消费的冰淇淋公升数。然后有一个所属类别,被女士评价的三个类别,不喜欢didnt、魅力一般small、极具魅力large也许也就是说飞行里程数对于结算结果或者说相亲结果影响较大,但是统计的人觉得这三个特征同等重要。
这时候我们就需要进行归一化处理了。
注意在特定场景下最大值最小值是变化的,另外,最大值与最小值非常容易受异常点影响,所以这种方法鲁棒性较差,只适合传统精确小数据场景。
1.3 标准化
特点:通过对原始数据进行变换把数据变换到均值为0,方差为1范围内。
公式:
注:作用于每一列,mean为平均值,