Как удалить предложение с одним словом в Python - PullRequest
0 голосов
/ 25 февраля 2019

В настоящее время я работаю в одном наборе данных, который содержит более 10000+ новостей, и я хочу удалить предложения, содержащие только одно слово.Я искал nltk и textcleaner, однако мне не удалось удалить предложения, содержащие только одно слово.

Например, допустим, скажем: Ввод: Я хочу удалить предложение одним словом.Хорошо.Хорошо. Давайте сделаем это. Вывод: Я хочу удалить предложение одним словом.Давайте сделаем это.

Код:

import textcleaner as tc
import nltk
import numpy as np

datafile = np.genfromtxt("f12filtered.txt", encoding='utf-8', delimiter=".")

data = tc.document(datafile)
data.remove_stpwrds() 

1 Ответ

0 голосов
/ 25 февраля 2019

Данные можно разбить на список предложений, используя разделитель '.'. И затем, если в предложении есть только одно слово, мы можем удалить это предложение.Данные теперь будут списком, и вы можете присоединиться к списку, если хотите работать с полным текстом или использовать его как есть.Вы можете сделать это, используя следующий код:

    data = data.split('.')
    for sent in data:
        sent = sent.split(' ')
        if len(sent) < 2:
            data.remove((' ').join(sent))

Чтобы объединить данные в одну строку:

    data = ('.').join(data)
...