pandas 下的 one hot encoder 及 pd.get_dummies() 与 sklearn.preprocessing 下的 OneHotEncoder 的区别
2017-06-05 19:17
816 查看
sklearn.preprocessing 下除了提供 OneHotEncoder 还提供 LabelEncoder(简单地将 categorical labels 转换为不同的数字);
sklearn.preprocessing 下的 OneHotEncoder 不可以直接处理 string,如果数据集中的某些特征是 string 类型的话,需要首先将其转换为 integers 类型;
在新版本中 sklearn 中,OneHotEncoder 实例的 fit 方法将不再接收 1 维数组,而必须是显式的二维形式;
pd.get_dummies(),则恰将 string 转换为 integers 类型:
将字典类型表示的属性,转换为向量类型:
1. 简单区别
Panda’s get_dummies vs. Sklearn’s OneHotEncoder() :: What is more efficient?sklearn.preprocessing 下的 OneHotEncoder 不可以直接处理 string,如果数据集中的某些特征是 string 类型的话,需要首先将其转换为 integers 类型;
在新版本中 sklearn 中,OneHotEncoder 实例的 fit 方法将不再接收 1 维数组,而必须是显式的二维形式;
encoder = OneHotEncoder() encoder.fit([[1, 2], [2, 1]])
pd.get_dummies(),则恰将 string 转换为 integers 类型:
>> pd.get_dummies(['A', 'B', 'A']) A B 0 1 0 1 0 1 2 1 0
2. sklearn.feature_extraction 下的 DictVectorizer
How can i vectorize list using sklearn DictVectorizer将字典类型表示的属性,转换为向量类型:
>> measurements = [ {'city=Dubai': True, 'city=London': True, 'temperature': 33.}, {'city=London': True, 'city=San Fransisco': True, 'temperature': 12.}, {'city': 'San Fransisco', 'temperature': 18.}, ] >> vec.feature_names ['city=Dubai', 'city=London', 'city=San Fransisco', 'temperature'] >> vec.fit_transform(measurements).toarray() array([[ 1., 1., 0., 33.], [ 0., 1., 1., 12.], [ 0., 0., 1., 18.]])
相关文章推荐
- sklearn.preprocessing.LabelEncoder和onehotencoder
- sklearn.preprocessing.OneHotEncoder
- pandas使用get_dummies进行one-hot编码的方法
- Pandas —— get_dummies( )和 factorize( )的区别
- pandas使用get_dummies进行one-hot编码
- Spark MLlib特征处理:OneHotEncoder OneHot编码 ---原理及实战
- 基于sklearn的序列处理 : LabelEncoder 与 OneHotEncoder
- 基于【pandas】的数据预处理(含定制【OneHotEncoder】方法)
- 所涉及到的几种 sklearn 的二值化编码函数:OneHotEncoder(), LabelEncoder(), LabelBinarizer(), MultiLabelBinarizer()
- 【python】pd.get_dummies进行one-hot编码
- 所涉及到的几种 sklearn 的二值化编码函数:OneHotEncoder(), LabelEncoder(), LabelBinarizer(), MultiLabelBinarizer()
- 对python 数据处理中的LabelEncoder 和 OneHotEncoder详解
- Spark MLlib特征处理:OneHotEncoder OneHot编码 ---原理及实战
- sklearn 中的 OneHotEncoder 用法
- pandas使用get_dummies进行one-hot编码
- Sklearn中LabelEncoder与OneHotEncoder
- pandas使用get_dummies进行one-hot编码
- Pandas 文本数据方法 get_dummies()
- 独热编码 OneHotEncoder()
- OneHotEncoder介绍单属性多属性scala实现