【问题标题】:How do I pass a file path containing spaces to the Gensim LDA Mallet wrapper?如何将包含空格的文件路径传递给 Gensim LDA Mallet 包装器?
【发布时间】:2019-09-11 19:49:13
【问题描述】:

我正在尝试使用 Gensim 的 Mallet 包装器。当我运行以下代码时:

import os
import gensim

os.environ.update({
        'MALLET_HOME':
        r":C\Users\me\OneDrive - My Company\Documents\Projects\Current\mallet-2.0.8"
    })
lda_mallet = gensim.models.wrappers.LdaMallet(
        r"C:\Users\me\OneDrive - My Company\Documents\Projects\Current\mallet-2.0.8\bin\mallet",
        corpus=corpus,
        num_topics=10,
        id2word=id_dict)

我被抛出以下错误:

'C:\Users\me\OneDrive' is not recognized as an internal or external command,
operable program or batch file.

subprocess.CalledProcessError: Command 'C:\Users\me\OneDrive - My Company\Documents\Projects\Current\mallet-2.0.8\bin\mallet import-file --preserve-case --keep-sequence --remove-stopwords --token-regex "\S+" --input C:\Users\me\AppData\Local\Temp\17fe21_corpus.txt --output C:\Users\me\AppData\Local\Temp\17fe21_corpus.mallet' returned non-zero exit status 1.

在进行了详尽的在线搜索后,我发现了许多建议的解决方案,但遗憾的是并没有解决我的问题。

由于第一条错误消息没有打印出整个路径,我相信空格是问题的原因。

很遗憾,我的公司要求我使用此目录,我无法更改名称。有没有办法“转义”空格以运行我的代码?

【问题讨论】:

    标签: python bash gensim lda mallet


    【解决方案1】:

    好吧,这很简单,LdaMallet 类是一个写得很糟糕的软件,请将其作为错误报告给它的创建者。

    【讨论】:

      猜你喜欢
      • 2021-10-05
      • 2015-04-26
      • 2013-04-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多