Индекс строки вне диапазона в тегах POS
Я делаю POS-теги, используя пакет nltk в Python. Теперь он показывает индекс строки ошибки вне диапазона, хотя моя строка не очень большая.
import nltk
sample_list = ['', 'emma', 'jane', 'austen', '1816', '', 'volume', 'chapter', 'emma', 'woodhouse', ' ','handsome', ' ', 'clever', ' ', 'rich', ' ', 'comfortable', 'home', 'happy', 'disposition', ' ','seemed', 'unite', 'best','blessings', 'existence', '', 'lived','nearly', 'twenty-one', 'years','world', 'little', 'distress', 'vex', '', 'youngest','two']
tagged = nltk.pos_tag(sample_list)
2 ответа
Ваша проблема с пустыми строками, а именно ''
так что вы можете использовать:
tagged = nltk.pos_tag([i for i in sample_list if i])
Ваш ввод содержит пустые слова, такие как ваши первые элементы в списке. Попробуйте выполнить фильтрацию следующим образом:
clean_sample_list = [word for word in sample_list if
word]
tagged = nltk.pos_tag(clean_sample_list)