sklearn preprocessing 数据预处理(OneHotEncoder)
1. one hot encoder
sklearn.preprocessing.OneHotEncoder
one hot encoder 不仅对 label 可以进行编码,还可对 categorical feature 进行编码:
>>> from sklearn.preprocessing import OneHotEncoder
>>> enc = OneHotEncoder()
>>> enc.fit([[0, 0, 3], [1, 1, 0], [0, 2, 1], [1, 0, 2]])  
>>> enc.n_values_
array([2, 3, 4])
>>> enc.feature_indices_
array([0, 2, 5, 9])
>>> enc.transform([[0, 1, 1]]).toarray()
array([[ 1.,  0.,  0.,  1.,  0.,  0.,  1.,  0.,  0.]])
为 OneHotEncoder 类传递进来的数据集:
[[0, 0, 3],
[1, 1, 0],
[0, 2, 1],
[1, 0, 2]]
每一列代表一个属性,fit 操作之后:
- 对象
enc的n_values_成员变量,记录着每一个属性的最大取值数目,如本例第一个属性:0, 1, 0, 1⇒ 2,0, 1, 2, 0⇒ 3,3, 0, 1, 2⇒4;- 即各个属性(feature)在 one hot 编码下占据的位数;
 
 - 对象 
enc的feature_indices_,则记录着属性在新 One hot 编码下的索引位置,
- feature_indices_ 是对 n_values_ 的累积值,不过 feature_indices 的首位是 0;
 
 
进一步通过 fit 好的 one hot encoder 对新来的特征向量进行编码:
>>> enc.transform([[0, 1, 1]]).toarray()
array([[ 1.,  0.,  0.,  1.,  0.,  0.,  1.,  0.,  0.]])
- 前 2 位 1, 0,对 0 进行编码
 - 中间 3 位 0, 1, 0 对 1 进行编码;
 - 末尾 4 位 0, 1, 0, 0 对 1 进行编码;
 
sklearn preprocessing 数据预处理(OneHotEncoder)的更多相关文章
- 【Sklearn系列】使用Sklearn进行数据预处理
		
这篇文章主要讲解使用Sklearn进行数据预处理,我们使用Kaggle中泰坦尼克号事件的数据作为样本. 读取数据并创建数据表格,查看数据相关信息 import pandas as pd import ...
 - 关于使用sklearn进行数据预处理 —— 归一化/标准化/正则化
		
一.标准化(Z-Score),或者去除均值和方差缩放 公式为:(X-mean)/std 计算时对每个属性/每列分别进行. 将数据按期属性(按列进行)减去其均值,并处以其方差.得到的结果是,对于每个属 ...
 - pandas 下的 one hot encoder 及 pd.get_dummies() 与 sklearn.preprocessing 下的 OneHotEncoder 的区别
		
sklearn.preprocessing 下除了提供 OneHotEncoder 还提供 LabelEncoder(简单地将 categorical labels 转换为不同的数字): 1. 简单区 ...
 - Python: sklearn库——数据预处理
		
Python: sklearn库 —— 数据预处理 数据集转换之预处理数据: 将输入的数据转化成机器学习算法可以使用的数据.包含特征提取和标准化. 原因:数据集的标准化(服从均值为 ...
 - 【sklearn】数据预处理 sklearn.preprocessing
		
数据预处理 标准化 (Standardization) 规范化(Normalization) 二值化 分类特征编码 推定缺失数据 生成多项式特征 定制转换器 1. 标准化Standardization ...
 - sklearn preprocessing (预处理)
		
预处理的几种方法:标准化.数据最大最小缩放处理.正则化.特征二值化和数据缺失值处理. 知识回顾: p-范数:先算绝对值的p次方,再求和,再开p次方. 数据标准化:尽量将数据转化为均值为0,方差为1的数 ...
 - 【原】关于使用sklearn进行数据预处理 —— 归一化/标准化/正则化
		
一.标准化(Z-Score),或者去除均值和方差缩放 公式为:(X-mean)/std 计算时对每个属性/每列分别进行. 将数据按期属性(按列进行)减去其均值,并处以其方差.得到的结果是,对于每个属 ...
 - 【原】关于使用Sklearn进行数据预处理 —— 缺失值(Missing Value)处理
		
关于缺失值(missing value)的处理 在sklearn的preprocessing包中包含了对数据集中缺失值的处理,主要是应用Imputer类进行处理. 首先需要说明的是,numpy的数组中 ...
 - 使用sklearn进行数据预处理 —— 归一化/标准化/正则化
		
一.标准化(Z-Score),或者去除均值和方差缩放 公式为:(X-mean)/std 计算时对每个属性/每列分别进行. 将数据按期属性(按列进行)减去其均值,并除以其方差.得到的结果是,对于每个属 ...
 
随机推荐
- php把数据表导出为Excel表的最简单、最快的方法(不用插件)
			
亲测可用,把下面的数据换成自己的即可 <?php header("Content-type:application/vnd.ms-excel");header("C ...
 - OpenJDK源码研究笔记(五)-缓存Integer等类型的频繁使用的数据和对象,大幅度提升性能(一道经典的Java笔试题)
			
摘要 本文先给出一个看似很简单实则有深意的Java笔试面试题,引出JDK内部的缓存. JDK内部的缓存,主要是为了提高Java程序的性能. 你能答对这道"看似简单,实则有深意"的J ...
 - 【BZOJ 1406】 [AHOI2007]密码箱
			
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] \(x^2%n=1\) \(x^2-1 = k*n\) \((x+1)*(x-1) % n == 0\) 设\(n=a*b\) 对于 ...
 - javascript取前n天的日期两种方法
			
方法一: var d = new Date(); d = new Date(d.getFullYear(),d.getMonth(),d.getDate()-n); 方法二: var now = ne ...
 - 配置oh-my-zsh
			
1. 当使用zsh进入庞大的git工程目录下时,会发生cd命令很慢的情况 可以把~/.oh-my-zsh/lib/git.zsh里面的git_prompt_info函数替换为 function git ...
 - 洛谷 P2009 跑步
			
P2009 跑步 题目背景 跑步是一项有意思的运动,尤其是可以开发人的脑筋.常神牛很喜欢跑步. 题目描述 常神牛跑步的场地是一个多边形(边数≤20,每个顶点用英文大写字母表示),并且在这个多边形内部, ...
 - 用Go语言写了一个电脑搜索文件的小东西
			
package main import ( "bytes" "fmt" "os" "os/exec" "pat ...
 - 2014 Unity3d大会的部分总结
			
一.项目开发.管理和公布策略 1. 四大准则 a. 美术的资源量 b. 美术规范,要依据开发什么样的游戏制定统一的规范,这样尽可能的形成统一的规范.然后程序要协助美 ...
 - SPFA的两种优化
			
SPFA是可以优化的,这个大家都是晓得的吧. 下面介绍两种SPFA的神奇优化(我只代码实现了的一种) SLF:Small Label First策略,设要加入的节点是j,队首元素为i,若dist(j) ...
 - Random words
			
To choose a random word from the histogram, the simplest algorithm is to build a list with multiple ...