Nltk: "IndexError: فهرس السلسلة خارج النطاق" عند محاولة اشتقاق الكلمة "oing"

تم إنشاؤها على ٨ فبراير ٢٠١٧  ·  5تعليقات  ·  مصدر: nltk/nltk

سهل التكاثر:

>>> from nltk import PorterStemmer
>>> stemmer = PorterStemmer()
>>> stemmer.stem('oing')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/peterbe/virtualenvs/songsearch/lib/python3.5/site-packages/nltk/stem/porter.py", line 665, in stem
    stem = self._step1b(stem)
  File "/Users/peterbe/virtualenvs/songsearch/lib/python3.5/site-packages/nltk/stem/porter.py", line 376, in _step1b
    lambda stem: (self._measure(stem) == 1 and
  File "/Users/peterbe/virtualenvs/songsearch/lib/python3.5/site-packages/nltk/stem/porter.py", line 258, in _apply_rule_list
    if suffix == '*d' and self._ends_double_consonant(word):
  File "/Users/peterbe/virtualenvs/songsearch/lib/python3.5/site-packages/nltk/stem/porter.py", line 214, in _ends_double_consonant
    word[-1] == word[-2] and
IndexError: string index out of range
>>> import nltk
>>> nltk.__version__
'3.2.2'
bug pleaseverify stelemma

التعليق الأكثر فائدة

إذن ، هل تم حل المشكلة؟

ال 5 كومينتر

تلقيت هذا الخطأ للكلمة "aed" :

from nltk.stem.porter import PorterStemmer
from nltk.corpus import stopwords
stemmer = PorterStemmer()
stemmer.stem('aed')

الخطأ هو:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/peter.hurford/.virtualenvs/rex/lib/python2.7/site-packages/nltk/stem/porter.py", line 665, in stem
    stem = self._step1b(stem)
  File "/Users/peter.hurford/.virtualenvs/rex/lib/python2.7/site-packages/nltk/stem/porter.py", line 376, in _step1b
    lambda stem: (self._measure(stem) == 1 and
  File "/Users/peter.hurford/.virtualenvs/rex/lib/python2.7/site-packages/nltk/stem/porter.py", line 258, in _apply_rule_list
    if suffix == '*d' and self._ends_double_consonant(word):
  File "/Users/peter.hurford/.virtualenvs/rex/lib/python2.7/site-packages/nltk/stem/porter.py", line 214, in _ends_double_consonant
    word[-1] == word[-2] and
IndexError: string index out of range

مثبت بـ:

pip install nltk
python -m nltk.downloader -d

الإصدار:

import nltk
nltk.__version__ # '3.2.2'

نسخة مكررة من https://github.com/nltk/nltk/issues/1581. خطأي آسف. :(

تم تقديم الخطأ في الإصدار 3.2.2 وتم إصلاحه في الإصدار الرئيسي ؛ يمكنك إما استخدام develop أو الإصدار 3.2.1 للتخلص من الخطأ.

إغلاق كما تم إصلاحه؟

إذن ، هل تم حل المشكلة؟

كان يجب حل هذه المشكلة بواسطة # 1582 😉

>>> import nltk
>>> nltk.__version__
'3.2.5'

>>> from nltk import PorterStemmer
>>> porter = PorterStemmer()
>>> porter.stem('oing')
u'o'

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات