python - 即使我将目录下载到 nltk.data.path 的路径列表中,NLTK 也找不到路径
问题描述
运行时,nltk.data.path
我得到以下目录:
nltk.data.path
['/home/alex/nltk_data',
'/home/alex/miniconda3/envs/machinelearning/nltk_data',
'/home/alex/miniconda3/envs/machinelearning/share/nltk_data',
'/home/alex/miniconda3/envs/machinelearning/lib/nltk_data',
'/usr/share/nltk_data',
'/usr/local/share/nltk_data',
'/usr/lib/nltk_data',
'/usr/local/lib/nltk_data']
好的,现在我想下载 NLTKstopwords
数据。
nltk.download('stopwords',download_dir='/home/alex/miniconda3/envs/machinelearning/nltk_data')
一切正常,但是当我调用stopwords
操作系统错误时:
stopwords.words('english')[0:15]
OSError: No such file or directory: '/home/alex/nltk_data/corpora/stopwords/english'
好吧,我认为 NLTK 会查看整个路径列表。但本质上,这个错误表明它只是在寻找'/home/alex/nltk_data'
没有找到数据并抛出错误。
解决方案
NLTK_DATA
您没有为存储 NLTK 数据的目录设置环境变量。默认情况下,安装目录nltk_data
位于您的主目录中。
您可以通过以下方式设置它:
NLTK_DATA='/home/alex/miniconda3/envs/machinelearning/nltk_data'
或使用默认/home/alex/nltk_data
目录(将数据移到那里/符号链接那里)。
该download_dir
参数仅指示临时存储数据的位置。
推荐阅读
- c - 延迟初始化具有多线程读取器的数组:没有障碍或原子是否安全?
- python - 如何根据对话框中的事件在主窗口中填充列表
- android - 请求位置更新从未调用 onLocationResult
- python - Keras 自定义层(将另一个自定义层作为超类)不接受多个输入
- c - 如何将此功能代码减少到最多 25 行?
- c# - LogManager.GetLogger("Name") 和 LogManager.GetCurrentClassLogger() 有什么区别?
- git - 哈士奇的工作原理是什么?
- tsql - 如果多列中的链接数据可用,如何获取每个组的最小 ID
- sql-server - Access 2010 的 SQL Server 驱动程序更新
- c# - SQL 到 LINQ 表达式