用Python计算单词

时间:2015-04-08 21:23:19

标签: python list scikit-learn

我在python中有一个字符串列表。

list = [ "Sentence1. Sentence2...", "Sentence1. Sentence2...",...]

我想删除停用词并计算所有不同字符串组合的每个单词的出现次数。有一个简单的方法吗?

我目前正在考虑使用scikit中的CountVectorizer(),而不是迭代每个单词并组合结果

2 个答案:

答案 0 :(得分:1)

如果您不介意安装新的python库,我建议您使用gensim。 第一个教程完全符合您的要求:

# remove common words and tokenize
stoplist = set('for a of the and to in'.split())
texts = [[word for word in document.lower().split() if word not in stoplist]
         for document in documents]

然后,您需要为您的文档语料库创建字典并创建词袋。

dictionary = corpora.Dictionary(texts)
dictionary.save('/tmp/deerwester.dict') # store the dictionary, for future 
print(dictionary)

您可以使用tf-idf和stuff对结果进行加权,并在之后很容易地进行LDA。

查看教程1 here

答案 1 :(得分:0)

您未能彻底解释您的想法,但这可能是您正在寻找的内容:

counts = collections.Counter(' '.join(your_list).split())