我正在跑步(来自Gensim)
top_topics(corpus, num_topics=5, num_words=20)
我收到错误:
for topic in lda.top_topics(corpus=corpus, num_topics=5, num_words=20):
File "/Library/Python/2.7/site-packages/gensim/models/ldamodel.py", line 760, in top_topics
bestn = np.argsort(topic)[::-1][:num_words]
NameError: global name 'np' is not defined
我认为这很奇怪,我可以看到该文件(确实它有import numpy
但不是import numpy as np
)。
添加import numpy as np
并尝试再次运行后
File "/Library/Python/2.7/site-packages/gensim/models/ldamodel.py", line 772, in top_topics
if len(list(ifilter(lambda x: x[0] == id,corpus[document]))) > 0:
NameError:全局名称' ifilter'未定义
通过将from itertools import chain
更改为from itertools import chain, ifilter
来解决此问题。然后该模块完美运行。
所以,我想我的问题是这是否是一个特定于我的系统的错误(是否有某种'导入所有' python技巧对我不起作用?)。
答案 0 :(得分:0)
如果您使用pip使用pip install --upgrade numpy
为了安全起见,也尝试升级你的gensim