FileNotFoundError: [Errno 2] Нет такого файла или каталога: путь маллета - PullRequest
1 голос
/ 02 апреля 2019

Так что этот код работал раньше, сейчас я получаю эту ошибку - пожалуйста, помогите: (

mallet_path = 'C:/mallet/mallet-2.0.8/bin/mallet.bat'

ldamallet_test = gensim.models.wrappers.LdaMallet(mallet_path, corpus=bow_corpus_test, num_topics=20, id2word=dictionary_test)

Error message

* +1012 *This mallet.bat file I'm referencing no longer opens

1 Ответ

1 голос
/ 02 апреля 2019

Это потому, что ваш домашний каталог для Маллета не настроен должным образом.Даже если у вас есть путь к двоичному набору в качестве переменной, вы все равно должны определить переменную среды, которая содержит источник, где находится Маллет:

import os
from gensim.models.wrappers import LdaMallet

os.environ['MALLET_HOME'] = 'C:\\mallet\\mallet-2.0.8'

mallet_path = 'C:\\mallet\\mallet-2.0.8\\bin\\mallet'
ldamallet_test = gensim.models.wrappers.LdaMallet(mallet_path, corpus=bow_corpus_test, num_topics=20, id2word=dictionary_test)

Обратите внимание, что вам не нужно добавлятьрасширение .bat, так как Windows должна выполнить это изначально, поскольку она знает, что это командный файл.И, наконец, вы должны использовать двойную обратную косую черту (\\) для разделителя пути в Windows.Невыполнение этого в зависимости от используемой версии Windows может привести к неожиданному поведению.Если вы хотите избежать головной боли, попробуйте использовать os.path.join, который предоставит вам правильный разделитель пути независимо от операционной системы:

mallet_path = os.path.join('C:', 'mallet', 'mallet-2.0.8', 'bin', 'mallet')
...