python mallet LDA FileNotFoundError: [Errno 2] 没有这样的文件或目录: 'C:\\Users\\abc\\AppDa



这是我第一次使用木槌LDA。基本上,我下载了 mallet-2.0.8 zip 文件和 JDK。我安装了JDK,将mallet-2.0.8解压缩到目标文件夹。我设置了MALLET_HOME。 这是我的代码

mallet_path='C:/Users/abc/mallet-2.0.8/bin/mallet'
ldamallet=gensim.models.wrappers.LdaMallet(mallet_path,corpus=corpus,num_topics=20,id2word=id2word)

但是,它给出了错误:

文件未找到错误[错误 2]

我试过了

mallet_path='C:\Users\abc\mallet-2.0.8\bin\mallet'

mallet_path=r'C:Usersabcmallet-2.0.8binmallet'

我得到了同样的错误消息。

我遇到了同样的问题。我得到的错误如下:

IOError: [Errno 2] No such file or directory c:\users\...\appdata\local\temp \d36348_state.mallet.gz.

每次我尝试运行代码时,下划线之前的前缀都会更改,但错误名称始终以"~一些字母数字字符串~_state.mallet.gz"的形式结尾。

我试图了解控制台中的堆栈跟踪输出。此错误行之前的行如下所示:

fileobj = self.myfileobj = __builtin__.open(filename, mode or 'rb')

我用谷歌搜索了一下,找到了这个特定的链接。这是一个 github 链接,一个人提出了不同的错误,但他的错误日志的结尾部分与我的相同。他的错误的解决方案是升级他的smart_open模块,gensim依赖它,因为升级已经解决了这个问题。所以我检查了我的smart_open模块版本,它是1.4.x的,最后一次更新是在大约一年半前,所以我将其升级到1.5.7版本,LdaMallet 代码可以正常工作。

请检查您的问题是否是由于相同的原因引起的。

希望对您有所帮助!

附言我还将我的gensim模块与smart_open一起更新到3.4版。

我遇到了同样的问题,这是因为我忘记设置环境变量%MALLET_HOME%

import os
from gensim.models.wrappers import LdaMallet
os.environ['MALLET_HOME'] = 'C:/.../mallet-2.0.8/'

这就是答案

import os
from gensim.models.wrappers import LdaMallet
os.environ['MALLET_HOME'] = 'C:\Users\DELL\Desktop\Research_lak\mallet-2.0.8'
mallet_path = 'C:\Users\DELL\Desktop\Research_lak\mallet-2.0.8\bin\mallet'
ldamallet = gensim.models.wrappers.LdaMallet(mallet_path, corpus=corpus, num_topics=10, id2word=id2word)

相关内容

  • 没有找到相关文章

最新更新