码迷,mamicode.com
首页 > 其他好文 > 详细

sklearn

时间:2020-02-11 16:01:11      阅读:60      评论:0      收藏:0      [点我收藏+]

标签:state   process   form   性能   数据预处理   离散   指定   mat   normal   

一、获取数据

1.导入数据:

from sklearn import datasets

 

 

from sklearn import datasets

iris=datasets.load_iris()     #导入数据集

x=iris.data                  #获得特征向量

y=iris.target                   #获得样本lable

2.

from sklearn.datasets.samples_generator import make_classification
 
X, y = make_classification(n_samples=6, n_features=5, n_informative=2, 
    n_redundant=2, n_classes=2, n_clusters_per_class=2, scale=1.0, 
    random_state=20)
 
# n_samples:指定样本数
# n_features:指定特征数
# n_classes:指定几分类
# random_state:随机种子,使得随机状可重

 

二、数据预处理

2.1 数据归一化(使得训练数据的标准化规则与测试数据的标准化规则同步)

from sklearn import preprocessing
data = [[0, 0], [0, 0], [1, 1], [1, 1]]
# 1. 基于mean和std的标准化
scaler = preprocessing.StandardScaler().fit(train_data)
scaler.transform(train_data)
scaler.transform(test_data)
 
# 2. 将每个特征值归一化到一个固定范围
scaler = preprocessing.MinMaxScaler(feature_range=(0, 1)).fit(train_data)
scaler.transform(train_data)
scaler.transform(test_data)
#feature_range: 定义归一化范围,注用()括起来

 

2.2 数据正则化(使得训练数据的标准化规则与测试数据的标准化规则同步,最终使得每个样本的范数都为1。)

>>> X = [[ 1., -1.,  2.],
...      [ 2.,  0.,  0.],
...      [ 0.,  1., -1.]]
>>> X_normalized = preprocessing.normalize(X, norm=‘l2‘)
 
>>> X_normalized                                      
array([[ 0.40..., -0.40...,  0.81...],
       [ 1.  ...,  0.  ...,  0.  ...],
       [ 0.  ...,  0.70..., -0.70...]])

2.3 one-shot编码

one-hot编码是一种对离散特征值的编码方式,在LR模型中常用到,用于给线性模型增加非线性能力。

data = [[0, 0, 3], [1, 1, 0], [0, 2, 1], [1, 0, 2]]
encoder = preprocessing.OneHotEncoder().fit(data)
enc.transform(data).toarray()

sklearn

标签:state   process   form   性能   数据预处理   离散   指定   mat   normal   

原文地址:https://www.cnblogs.com/cloris-Zhang/p/12295357.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!