系列文章目录
第一章 Python 机器学习——数据预处理
前言
数据预处理(data preprocessing)是指在主要的处理以前对数据进行的一些处理。如对大部分地球物理面积性观测数据在进行转换或增强处理之前,首先将不规则分布的测网经过插值转换为规则网的处理,以利于计算机的运算。另外,对于一些剖面测量数据,如地震资料预处理有垂直叠加、重排、加道头、编辑、重新取样、多路编辑等。
一、数据预处理过程
数据预处理的过程:输入数据→模型→输出数据
二、数据预处理相关库
1.引入库
#解决机器学习问题的科学计算工具包
import sklearn.preprocessing as sp
2.样本均值为0
由于一个样本的不同特征值差异较大,不利于使用现有机器学习算法进行样本处理,均值移除可以让样本矩阵中的每一列的平均值为0,标准差为1.
使样本矩阵中的每一列的平均值为0:
#假如有一列特征值表示年龄:17、20、23
mean = (17+20+23)/3=20
a’=-3
b'=0
c' = 3
3.样本矩阵中标准差为1
a’=-3
b’=0
c’ = 3
s’ = std(a’,b’,c’)
[a’/s’,b’/s’,c’/s’]
#均值移除API
import sklearn.preprocessing as sp
#scale函数用于对函数进行预处理,实现均值移除
#array为原数组,返回A为均值移除后的结果
A = sp.scale(array)
案例:
import numpy as np
import sklearn.preprocessing as sp
raw_samples = np.array([
[17.,100,4000],
[20.,80.,5000],
[23.,75.,5500]])
std_samples = sp.scale(raw_samples)
print(std_samples)
print(std_samples.mean(axis = 0))
print(std_samples.std(axis = 0))
总结
以上就是今天要讲的内容,本文仅仅简单介绍了数据预处理过程样本均值转为0,标准差转为1的方法,后续还需介绍更多数据预处理过程。