Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python中NLTK中词性标记的zip文件错误_Python_Word_Nltk_Tokenize_Pos Tagger - Fatal编程技术网

python中NLTK中词性标记的zip文件错误

python中NLTK中词性标记的zip文件错误,python,word,nltk,tokenize,pos-tagger,Python,Word,Nltk,Tokenize,Pos Tagger,我不熟悉python和NLTK。我想在这方面做单词标记和词性标记。我在我的Ubuntu 14.04中安装了NLTK 3.0,有一个默认的python 2.7.6。首先我尝试对一个简单的句子进行标记。但是我遇到了一个错误,告诉我“BadZipfile:文件不是zip文件”。如何解决这个问题 还有一个疑问,就是。当我安装nltk数据(使用命令行)时,我将路径设置为“/usr/share/nltk_data”。由于某些错误,某些包无法安装。但当我使用命令“nltk.data.path”勾选时,它显示了

我不熟悉python和NLTK。我想在这方面做单词标记和词性标记。我在我的Ubuntu 14.04中安装了NLTK 3.0,有一个默认的python 2.7.6。首先我尝试对一个简单的句子进行标记。但是我遇到了一个错误,告诉我“BadZipfile:文件不是zip文件”。如何解决这个问题

还有一个疑问,就是。当我安装nltk数据(使用命令行)时,我将路径设置为“/usr/share/nltk_data”。由于某些错误,某些包无法安装。但当我使用命令“nltk.data.path”勾选时,它显示了其他路径,而其他路径实际上无效。。为什么

我有1000个文本文件。如何为这么多的文件编写一个标记和词性标记程序,作为python的输入..我不知道。。请帮帮我

我在python解释器中使用命令的方式如下所示

Python 2.7.6 (default, Mar 22 2014, 22:59:56) 
[GCC 4.8.2] on linux2
Type "copyright", "credits" or "license()" for more information.
>>> import nltk
>>> nltk.data.path
['/home/ubuntu/nltk_data', '/usr/share/nltk_data',       '/usr/local/share/nltk_data', '/usr/lib/nltk_data', '/usr/local/lib/nltk_data']
>>> from nltk import pos_tag, word_tokenize
>>> sentence = "Hello my name is Derek. I live in Salt Lake city."
>>> sentence
'Hello my name is Derek. I live in Salt Lake city.'
>>> word_tokenize(sentence)

Traceback (most recent call last):
File "<pyshell#5>", line 1, in <module>
word_tokenize(sentence)
File "/usr/local/lib/python2.7/dist-packages/nltk/tokenize/__init__.py",      line 93, in word_tokenize
return [token for sent in sent_tokenize(text)
File "/usr/local/lib/python2.7/dist-packages/nltk/tokenize/__init__.py",   line 81, in sent_tokenize
tokenizer = load('tokenizers/punkt/english.pickle')
File "/usr/local/lib/python2.7/dist-packages/nltk/data.py", line 774, in   load
opened_resource = _open(resource_url)
File "/usr/local/lib/python2.7/dist-packages/nltk/data.py", line 888, in _open
return find(path_, path + ['']).open()
File "/usr/local/lib/python2.7/dist-packages/nltk/data.py", line 605, in find
return find(modified_name, paths)
File "/usr/local/lib/python2.7/dist-packages/nltk/data.py", line 592, in find
return ZipFilePathPointer(p, zipentry)
File "/usr/local/lib/python2.7/dist-packages/nltk/compat.py", line 380, in _decorator
return init_func(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/nltk/data.py", line 449, in __init__
zipfile = OpenOnDemandZipFile(os.path.abspath(zipfile))
File "/usr/local/lib/python2.7/dist-packages/nltk/compat.py", line 380, in _decorator
return init_func(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/nltk/data.py", line 946, in __init__
zipfile.ZipFile.__init__(self, filename)
File "/usr/lib/python2.7/zipfile.py", line 770, in __init__
self._RealGetContents()
File "/usr/lib/python2.7/zipfile.py", line 811, in _RealGetContents
raise BadZipfile, "File is not a zip file"
BadZipfile: File is not a zip file
>>>
Python 2.7.6(默认,2014年3月22日,22:59:56)
[GCC 4.8.2]关于linux2
有关详细信息,请键入“copyright”、“credits”或“license()”。
>>>导入nltk
>>>nltk.data.path
['/home/ubuntu/nltk_data'、'/usr/share/nltk_data'、'/usr/local/share/nltk_data'、'/usr/lib/nltk_data'、'/usr/local/lib/nltk_data']
>>>从nltk导入pos_标记,word_标记化
>>>句子=“你好,我叫德里克。我住在盐湖城。”
>>>判决
“你好,我叫德里克。我住在盐湖城
>>>单词标记化(句子)
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
单词标记化(句子)
文件“/usr/local/lib/python2.7/dist packages/nltk/tokenize/_init__.py”,第93行,在word_tokenize中
return[已发送的令牌\u令牌化(文本)
文件“/usr/local/lib/python2.7/dist packages/nltk/tokenize/_init__.py”,第81行,在sent_tokenize中
标记器=load('tokenizers/punkt/english.pickle')
文件“/usr/local/lib/python2.7/dist-packages/nltk/data.py”,第774行,装入
已打开\u资源=\u打开(资源\u url)
文件“/usr/local/lib/python2.7/dist-packages/nltk/data.py”,第888行,打开
返回find(路径,路径+['']).open()
文件“/usr/local/lib/python2.7/dist packages/nltk/data.py”,第605行,在find中
返回查找(修改的名称、路径)
文件“/usr/local/lib/python2.7/dist packages/nltk/data.py”,第592行,在find中
返回ZipFilePathPointer(p,zipentry)
文件“/usr/local/lib/python2.7/dist packages/nltk/compat.py”,第380行,in_decorator
返回初始函数(*args,**kwargs)
文件“/usr/local/lib/python2.7/dist packages/nltk/data.py”,第449行,在__
zipfile=OpenOnDemandZipFile(os.path.abspath(zipfile))
文件“/usr/local/lib/python2.7/dist packages/nltk/compat.py”,第380行,in_decorator
返回初始函数(*args,**kwargs)
文件“/usr/local/lib/python2.7/dist packages/nltk/data.py”,第946行,在__
zipfile.zipfile.\uuuu init\uuuu(self,文件名)
文件“/usr/lib/python2.7/zipfile.py”,第770行,在__
self.\u RealGetContents()
文件“/usr/lib/python2.7/zipfile.py”,第811行,在RealGetContents中
raise BadZipfile,“文件不是zip文件”
BadZipfile:文件不是zip文件
>>>

提前感谢….

您显然还没有运行
下载\u corpora.py
(成功)。

我解决了与下面关于stackoverflow的问题相同的问题

基本上,检查您的NLTK版本。 如果高于v3.2,请使用以下命令行:

nltk.download('averaged_perceptron_tagger')

这对我很有用。

这个文件在哪里?如何运行这个文件?在终端中?在此之前,我应该删除我已经下载的corpora文件夹吗?