【问题标题】:Convert word_tokenize to sentence将 word_tokenize 转换为句子
【发布时间】:2019-10-27 21:28:59
【问题描述】:

我是 Python nltk 的新手

目前,我有一个程序可以从句子中进行 word_tokenize。然后处理 word_tokenize 以将某些大写更正为某些名词。这个过程工作正常,现在我想再次将处理后的 word_tokenize 转换为一个句子。我可以通过循环轻松地做到这一点,对于每个显示,我只需要添加空间。但在某些情况下,这不适用于“它是、我是、不要等”这样的词。因为 word_tokenize 分别保存这些单词。这样做我处理后的 word_tokenize 将被转换为“it's, I'm, don't and etc.”

nltk有没有一个函数可以让word_tokenize完美造句?

【问题讨论】:

  • from nltk.tokenize import sent_tokenize
  • sent_tokenize 会将整个段落转换为句子。我正在寻找的是将单词列表(在我的情况下已处理的 word_tokenize)转换为一个句子。

标签: python nltk


【解决方案1】:

nltk 有 TreebankWordDetokenizer,它可以从标记列表中重建句子:

from nltk import word_tokenize
tokens = word_tokenize("I'm happy because it's a good book")
print(tokens)
#['I', "'m", 'happy', 'because', 'it', "'s", 'a', 'good', 'book']

from nltk.tokenize.treebank import TreebankWordDetokenizer
reconstructedSentence = TreebankWordDetokenizer().detokenize(tokens)
print(reconstructedSentence)
#I'm happy because it's a good book

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多