小编ned*_*zad的帖子

如何获取 CountVectorizer feature_names 以便设置它们,而不是按字母顺序排列?

我正在尝试使用向量化一些数据

sklearn.feature_extraction.text.CountVectorizer.
Run Code Online (Sandbox Code Playgroud)

这是我试图矢量化的数据:

corpus = [
 'We are looking for Java developer',
 'Frontend developer with knowledge in SQL and Jscript',
 'And this is the third one.',
 'Is this the first document?',
]
Run Code Online (Sandbox Code Playgroud)

矢量化器的属性由以下代码定义:

vectorizer = CountVectorizer(stop_words="english",binary=True,lowercase=False,vocabulary={'Jscript','.Net','TypeScript','SQL', 'NodeJS','Angular','Mongo','CSS','Python','PHP','Photoshop','Oracle','Linux','C++',"Java",'TeamCity','Frontend','Backend','Full stack', 'UI Design', 'Web','Integration','Database design','UX'})
Run Code Online (Sandbox Code Playgroud)

我运行后:

X = vectorizer.fit_transform(corpus)
print(vectorizer.get_feature_names())
print(X.toarray()) 
Run Code Online (Sandbox Code Playgroud)

我得到了想要的结果,但词汇表中的关键字是按字母顺序排列的。输出如下所示:

['.Net', 'Angular', 'Backend', 'C++', 'CSS', 'Database design', 
'Frontend', 'Full stack', 'Integration', 'Java', 'Jscript', 'Linux', 
'Mongo', 'NodeJS', 'Oracle', 'PHP', 'Photoshop', 'Python', 'SQL', 
'TeamCity', 'TypeScript', 'UI Design', 'UX', 'Web']

[
[0 0 0 …
Run Code Online (Sandbox Code Playgroud)

python machine-learning scikit-learn countvectorizer

6
推荐指数
1
解决办法
2178
查看次数