我有一个文档列表(TDT2语料库),我想用tfidf从中获取词汇表。使用textblob需要花费很长时间,而且我看不出它在5-6天之前不会产生词汇。有没有其他的方法可以解决这个问题?我遇到了scikit learn的tfidf技术,但恐怕也要花同样的时间。在
from sklearn.feature_extraction.text import CountVectorizer
results = []
with open("/Users/mxyz/Documents/wholedata/X_train.txt") as f:
for line in f:
results.append(line.strip().split('\n'))
blob=[]
for line in results:
blob.append(line)
count_vect= CountVectorizer()
counts=count_vect.fit_transform(blob)
print(counts.shape)
这会不断产生一个错误,即不接受一个列表,而该列表没有更低的。在
我假设
results
应该是list
,而不是list
s的list
?如果是这样,请更改:收件人:
^{pr2}$append
正在将split
返回的整个list
作为单个元素添加到results
list
中;extend
将从list
单独添加到results
中。在旁注:如前所述
只是做一个浅拷贝
results
的慢方法。你可以用blob = results[:]
或blob = list(results)
(后者比较慢,但是如果你不知道results
是什么类型的iterable,并且需要它是list
而不需要其他任何东西,那么你就可以这样做了)。在相关问题
PyPI热门下载资源包