一个例子:
df=pd.DataFrame({'x':['thisisanewveaddea','sklearnisbeautiful']})
#transfer to list
df1=list(df.x.values)
from sklearn.feature_extraction import text
vectorizer=text.CountVectorizer()
x=vectorizer.fit_transform(df1)
x.toarray()
单词vector是:
Out[105]:
array([[0, 1],
[1, 0]], dtype=int64)
令牌生成器是:
vectorizer.get_feature_names()
Out[106]: ['sklearnisbeautiful', 'thisisanewveaddea']
但是,我想使用自己的令牌生成器/词典:
mydict=['thisi','san','ewveaddea','sklearnisb','eautiful']
使用我自己的令牌生成器,预期的单词向量为:
x ['thisi','san','ewveaddea','sklearnisb','eautiful']
'thisisanewveaddea':[1, 1, 1, 0, 0]
'sklearnisbeautiful':[0, 0, 0, 1 1]
如何将自己的令牌生成器转移到sklearn的Countervectorizer
答案 0 :(得分:0)
CountVectorizer
有一个tokenizer
参数,您可以在其中传递自定义标记器。