发现gensim文件错误

时间:2017-05-12 16:48:23

标签: python python-3.x gensim

我正在执行以下行:

id2word = gensim.corpora.Dictionary.load_from_text('wiki_en_wordids.txt')

此代码可在" https://radimrehurek.com/gensim/wiki.html" 中找到。我下载了维基百科语料库并生成了所需的文件,wiki_en_wordids.txt就是其中一个文件。此文件位于以下位置:

~/gensim/results/wiki_en

所以当我执行上面提到的代码时,我收到以下错误:

Traceback (most recent call last):
          File "~\Python\Python36-32\temp.py", line 5, in <module>
            id2word = gensim.corpora.Dictionary.load_from_text('wiki_en_wordids.txt')
          File "~\Python\Python36-32\lib\site-packages\gensim\corpora\dictionary.py", line 344, in load_from_text
            with utils.smart_open(fname) as f:
          File "~\Python\Python36-32\lib\site-packages\smart_open\smart_open_lib.py", line 129, in smart_open
            return file_smart_open(parsed_uri.uri_path, mode)
          File "~\Python\Python36-32\lib\site-packages\smart_open\smart_open_lib.py", line 613, in file_smart_open
            return open(fname, mode)
          FileNotFoundError: [Errno 2] No such file or directory: 'wiki_en_wordids.txt'

即使文件在所需位置可用,我也会收到该错误。我应该将文件放在任何其他位置吗?如何确定正确的位置?

1 个答案:

答案 0 :(得分:1)

代码需要一个绝对路径。在同一目录位置执行整个操作时应使用相对路径,但在这种情况下,文件名作为参数传递给位于不同位置的某个其他函数。

处理这种情况的一种方法是使用 abspath -

    import os
    id2word = gensim.corpora.Dictionary.load_from_text(os.path.abspath('wiki_en_wordids.txt'))