sklearn-特征提升之特征提取-----DictVectorizer

DictVectorizer的处理对象时符号化(非数字化)的但是具有一定结构的特征数据,如字典等,将符号转成数字0/1表示。

test_dict = [{'name':'zhang','old':23},{'name':'wang','old':15},{'name':'liu','old':33}]

from sklearn.feature_extraction import DictVectorizer

#输出转化后的特征矩阵
print(vec.fit_transform(measurements).toarray())
#输出各个维度的特征含义
print(vec.get_feature_names())
[[ 0.  0.  1. 23.]
 [ 0.  1.  0. 15.]
 [ 1.  0.  0. 33.]]

['name=liu', 'name=wang', 'name=zhang', 'old']

原本的test_dict数据为:

name old 
zhang 23
wang 15
liu 33

经过DictVectorizer之后数据变成:

zhang wang liu old
1 0 0 23
0 1 0 15
0 0 1 33

这其实是一种把数据特征中的非数值型特征转换成数值型特征的一种方法。

你可能感兴趣的:(数据分析处理)