from sklearn.feature_extraction import DictVectorizer
DictVectorizer和fit_transform的使用:
v = DictVectorizer(sparse = False)#空白处为false
D = [{ 'F' : 'A' , 'B' : 'B' },{ 'F' : 'C' , 'B' : 'A' },{ 'F' : 'B' , 'B' : 'C' }]
X = v .fit_transform (D)
print X
[[ 0. 1. 0. 1. 0. 0.]
[ 1. 0. 0. 0. 0. 1.]
[ 0. 0. 1. 0. 1. 0.]]
分析每一行的数据随机给出序列
第一行:A B
第二行:C A
第三行:B C
比较第一列有三种不同的数据ABC,存在的为1,不存在为0。
那么对应关系就是:
C A B B C A
0 1 0 1 0 0 --> A B
1 0 0 0 0 1 --> C A
0 0 1 0 1 0 --> B C
例子1:D = [{ 'F' : 'A' , 'B' : 'B' },{ 'F' : 'B' , 'B' : 'A' }]
第一行:A B
第二行:B A
结果:[[ 0. 1. 1. 0.]
[ 1. 0. 0. 1.]]
对应关系:
B A B A
0 1 1 0 -->A B
1 0 0 1 -->B A
例子12:D = [{ 'F' : 'A' , 'B' : 'B' },{ 'F' : 'B' , 'B' : 'C' },{ 'F' : 'C' , 'B' : 'A'}]
第一行:A B
第二行:B C
第三行:C A
结果:[[ 0. 1. 0. 1. 0. 0.]
[ 0. 0. 1. 0. 1. 0.]
[ 1. 0. 0. 0. 0. 1.]]
对应关系:
C A B B C A
0 1 0 1 0 0 -->A B
0 0 1 0 1 0 -->B C
1 0 0 0 0 1 -->C A
DictVectorizer和fit_transform的使用:
v = DictVectorizer(sparse = False)#空白处为false
D = [{ 'F' : 'A' , 'B' : 'B' },{ 'F' : 'C' , 'B' : 'A' },{ 'F' : 'B' , 'B' : 'C' }]
X = v .fit_transform (D)
print X
[[ 0. 1. 0. 1. 0. 0.]
[ 1. 0. 0. 0. 0. 1.]
[ 0. 0. 1. 0. 1. 0.]]
分析每一行的数据随机给出序列
第一行:A B
第二行:C A
第三行:B C
比较第一列有三种不同的数据ABC,存在的为1,不存在为0。
那么对应关系就是:
C A B B C A
0 1 0 1 0 0 --> A B
1 0 0 0 0 1 --> C A
0 0 1 0 1 0 --> B C
例子1:D = [{ 'F' : 'A' , 'B' : 'B' },{ 'F' : 'B' , 'B' : 'A' }]
第一行:A B
第二行:B A
结果:[[ 0. 1. 1. 0.]
[ 1. 0. 0. 1.]]
对应关系:
B A B A
0 1 1 0 -->A B
1 0 0 1 -->B A
例子12:D = [{ 'F' : 'A' , 'B' : 'B' },{ 'F' : 'B' , 'B' : 'C' },{ 'F' : 'C' , 'B' : 'A'}]
第一行:A B
第二行:B C
第三行:C A
结果:[[ 0. 1. 0. 1. 0. 0.]
[ 0. 0. 1. 0. 1. 0.]
[ 1. 0. 0. 0. 0. 1.]]
对应关系:
C A B B C A
0 1 0 1 0 0 -->A B
0 0 1 0 1 0 -->B C
1 0 0 0 0 1 -->C A