我正在尝试在Spark独立群集上使用带有pyspark的NLTK包中的punkt tokenizer。 NLTK已经安装在各个节点上,但是nltk_data文件夹并没有驻留在NLTK所期望的位置(/ usr / share / nltk_data)。
我正在尝试使用punkt tokenizer,它位于(my / my_user / nltk_data)中。
我已经设定:
envv1 = "/whatever/my_user/nltk_data"
os.environ['NLTK_DATA'] = envv1
打印nltk.data.path表示第一个条目是我的nltk_data文件夹实际所在的位置。
from nltk import word_tokenize
没问题,但是当调用函数word_tokenize()
时,我收到以下错误:
ImportError: No module named nltk.tokenize
无论出于何种原因,我都可以从nltk.corpus访问资源。当我尝试nltk.download()时,很明显我已经下载了punkt tokenizer。我甚至可以在pyspark之外使用punkt tokenizer。