Comment tokenize une phrase de chaîne de caractères dans NLTK?
je suis en utilisant nltk, donc je veux créer mes propres textes comme ceux par défaut sur nltk.livre. Cependant, je viens d'arriver à la méthode comme
my_text = ['This', 'is', 'my', 'text']
j'aimerais découvrir n'importe quelle façon d'entrer mon "texte" comme:
my_text = "This is my text, this is a nice way to input text."
Quelle méthode, celle de python ou de nltk me permet de faire cela. Et plus important encore, Comment puis-je sous-estimer les symboles de ponctuation?
36
demandé sur
alvas
2013-02-25 03:26:12
2 réponses
C'est en fait sur le page principale de nltk.org:
>>> import nltk
>>> sentence = """At eight o'clock on Thursday morning
... Arthur didn't feel very good."""
>>> tokens = nltk.word_tokenize(sentence)
>>> tokens
['At', 'eight', "o'clock", 'on', 'Thursday', 'morning',
'Arthur', 'did', "n't", 'feel', 'very', 'good', '.']
121
répondu
Pavel Anossov
2013-02-24 23:28:02
comme @PavelAnossov a répondu, la réponse canonique, utilisez le word_tokenize
fonction dans nltk:
from nltk import word_tokenize
sent = "This is my text, this is a nice way to input text."
word_tokenize(sent)
Si votre phrase est vraiment assez simple:
string.punctuation
définir, suppression de la ponctuation de la diviser ensuite à l'aide de l'espace séparateur:
import string
x = "This is my text, this is a nice way to input text."
y = "".join([i for i in x if not in string.punctuation]).split(" ")
print y
-8
répondu
alvas
2017-07-27 07:13:58