使用tag功能对语句"I hope it is going good for you!"进行词性分析,以下为代码和预期输出
import pattern
from pattern.text.en import tag
tweet_ = "I hope it is going good for you!"
tweet_l = tweet_.lower()
tweet_tags = tag(tweet_l)
print(tweet_tags)
>> [('i', 'JJ'), ('hope', 'NN'), ('it', 'PRP'), ('is', 'VBZ'),
('going', 'VBG'), ('good', 'JJ'), ('for', 'IN'), ('you',
'PRP'), ('!', '.')]
由于尝试使用pattern.en时,PyCharm提示不能调用,故改为 pattern.text.en。
以下为报错详情:
Traceback (most recent call last):
File "C:\Users\tlsw\anaconda3\lib\site-packages\pattern\text\__init__.py", line 609, in _read
raise StopIteration
StopIteration
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:/Users/tlsw/AppData/Roaming/JetBrains/PyCharmCE2021.2/scratches/scratch_1.py", line 6, in <module>
tweet_tags = tag(tweet_1)
File "C:\Users\tlsw\anaconda3\lib\site-packages\pattern\text\en\__init__.py", line 188, in tag
for sentence in parse(s, tokenize, True, False, False, False, encoding, **kwargs).split():
File "C:\Users\tlsw\anaconda3\lib\site-packages\pattern\text\en\__init__.py", line 169, in parse
return parser.parse(s, *args, **kwargs)
File "C:\Users\tlsw\anaconda3\lib\site-packages\pattern\text\__init__.py", line 1172, in parse
s[i] = self.find_tags(s[i], **kwargs)
File "C:\Users\tlsw\anaconda3\lib\site-packages\pattern\text\en\__init__.py", line 114, in find_tags
return _Parser.find_tags(self, tokens, **kwargs)
File "C:\Users\tlsw\anaconda3\lib\site-packages\pattern\text\__init__.py", line 1113, in find_tags
lexicon = kwargs.get("lexicon", self.lexicon or {}),
File "C:\Users\tlsw\anaconda3\lib\site-packages\pattern\text\__init__.py", line 376, in __len__
return self._lazy("__len__")
File "C:\Users\tlsw\anaconda3\lib\site-packages\pattern\text\__init__.py", line 368, in _lazy
self.load()
File "C:\Users\tlsw\anaconda3\lib\site-packages\pattern\text\__init__.py", line 625, in load
dict.update(self, (x.split(" ")[:2] for x in _read(self._path) if len(x.split(" ")) > 1))
File "C:\Users\tlsw\anaconda3\lib\site-packages\pattern\text\__init__.py", line 625, in <genexpr>
dict.update(self, (x.split(" ")[:2] for x in _read(self._path) if len(x.split(" ")) > 1))
RuntimeError: generator raised StopIteration
请问是否是需要对tag,或是其他text名下的方法重新编译?