Sklearn库学习笔记1 Feature_Engineering之预处理篇
2017-08-28 16:06
351 查看
一、预处理
1. Binarizer 二值化处理from sklearn.preprocessing import Binarizer import numpy as np ''' 数据二值化处理: 适用场景:泊松分布,文本数据 操作特点:返回对于数值特征的阈值判断 ''' x_train = np.array([[1,2,-1], [2, 3, -2], [1, -1 ,1]]) bina = Binarizer(threshold=1.0, copy=True) bina.fit(x_train) bina.transform(x_train)
2. Imputer 填补缺失值
from sklearn.preprocessing import Imputer import numpy as np ''' 缺失值计算: 填补方式: “mean”, "median", "most_frequent" ''' x_train = np.array([[1,np.nan,-1], [2, 3, -2], [1, -1 ,1]]) imp = Imputer(missing_values='NaN', strategy='mean', axis=1, verbose=0, copy=True) imp.fit(x_train) imp.transform(x_train)
3. Normalizer 归一化
from sklearn.preprocessing import Normalizer import numpy as np ''' 归一化处理数据: 适用场景: 比如计算两个L2归一化后的TF-IDF向量内积实际上是计算它们的余弦相似度,余弦值越接近于1,它们的方向更加吻合,则越相似。 ''' x_train = np.array([[1,-5,-1], [2, 3, -2], [1, -1 ,1]]) imp = Normalizer(norm='l2', copy=True) ''' 正则化方式: 'l1' ,'l2', 'max' ''' imp.fit(x_train) imp.transform(x_train)
4. OneHotEncoder独热编码
from sklearn.preprocessing import OneHotEncoder import numpy as np ''' 独热编码: 对类别型特征编码,one-of-K的形式 ''' x_train = np.array([1,3,4]).reshape(-1, 1) onehot = OneHotEncoder(n_values='auto', categorical_features='all', dtype=np.float64, sparse=True, handle_unknown='error') ''' n_values: 每个特征的数量 categorical_features: 需要编码的特征名 dtype: 数据类型 sparse: 是否返回稀疏矩阵 handle_unknown: 遇到错误如何处理 ''' onehot.fit(x_train) print onehot.transform(x_train).toarray()
5. StandardScaler 和 MinMaxScaler标准化
from sklearn.preprocessing import StandardScaler from sklearn.preprocessing import MinMaxScaler import numpy as np ''' StandardScaler 数据标准化: 适用场景:比如PCA, SVM的RBF核等 注意事项:不能分别对训练集和测试集训练与转换,应该在训练集上训练,在测试集在转化,如下所示: X_train = scaler.fit_transform(X_train) X_test = scaler.transform(X_test) ''' x_train = np.array([[1,2,-1], [2, 3, -2], [1, -1, 1]]) stan = StandardScaler(copy=True, with_mean=True, with_std=True) stan.fit(x_train) stan.transform(x_train) maxmin = MinMaxScaler(feature_range=(0, 1), copy=True) maxmin.fit(x_train) maxmin.transform(x_train) #feature_range: 压缩范围
6. RobustScaler鲁棒性缩放
RobustScaler(with_centering=True, with_scaling=True, quantile_range=(25.0, 75.0), copy=True)
相关文章推荐
- 从sklearn.preprocessing, sklearn.feature_selection学习特征工程之预处理
- sklearn官方文档学习笔记 管道和特征联合(Pipeline and FeatureUnion):组合估计器
- 【数据分析 R语言实战】学习笔记 第三章 数据预处理 (下)
- 【C语言学习笔记】结构体、枚举、预处理指令
- Deep Learning 学习笔记(3):Linear Regression 数据的预处理
- <C++学习笔记>预处理功能
- php学习笔记(二十)mysqli的stmt的预处理类的使用(防止sql注入问题)
- OpenCV学习笔记——2维特征Feature2D,SURF
- halcon例程学习笔记(10)---图像灰度共生矩阵cooc_feature_image.hdev
- 黑马程序员——Objective-C程序设计(第4版)学习笔记之12-预处理程序——黑马 IOS 技术博客
- sklearn数据预处理类库学习
- python 学习笔记二之sklearn 库
- 【神经网络学习笔记】语音识别-matlab语音信号预处理
- halcon例程学习笔记(10)---图像灰度共生矩阵cooc_feature_image.hdev
- 林轩田之机器学习课程笔记( embedding numerous feature之 kernel logistic regression)(32之21)
- sklearn学习笔记-《模型验证方法》
- Python scikit-learn机器学习工具包学习笔记:feature_selection模块
- [学习笔记—Objective-C]《Objective-C 程序设计 第6版》第十二章 预处理程序
- C学习笔记之预处理指令
- C语言学习笔记8---预处理