特征预处理:对数据进行处理 通过特定的统计方法 (数学方法) 将数据转换成算法要求的数据。
数值型数据:标准缩放:1. 归一化。2. 标准化。3. 缺失值
类别型数据:one-hot编码
时间类型:时间的切分
sklearn特征预处理api
sklearn.preprocessing
(1)归一化
归一化特点:通过对原始数据进行变换把数据映射到(默认为[0,1])之间
归一化缺点:最大值与最小值非常容易受异常点影响,鲁棒性较差。使用较少
Sklearn归一化api。 多个特征同等重要时
sklearn.preprocessing.MinMaxScaler
MinMaxScaler(feature_range=(0,1))
每个特征缩放到给定范围(默认[0,1])
- MinMaxScaler.fit_transform(x)
X: numpy array格式的数据 [n_samples, n_features]
返回值:转换后的形式相同的array
(2)标准化 用的比归一化多
特点:通过对原始数据进行变换把数据变换为均值为0,标准差为1范围内。
和归一化一样,公式作用于每一列
sklearn.preprocessing.StandardScaler()
- StandardScaler.fit_transform(x)
StandardScaler.mean_ 原始数据中每列特征的平均值
StandardScaler.std_ 原始数据每列特征的标准差
(3)缺失值 得是np.nan模式
sklearn.preprocessing.Imputer
Imputer(missing_values=’NaN’, strategy=‘mean’, axis=0)
0是列1是行
- Imputer.fit_transform(x)