gpt4 book ai didi

python - NLTK 单词标记除带有破折号的单词外的所有单词,例如 ('hi-there' , 'me-you' )

转载 作者:行者123 更新时间:2023-12-03 23:46:31 25 4
gpt4 key购买 nike

如果我想标记除带破折号的单词以外的所有内容(即排除所有中间有破折号的单词),我不确定如何使用 nltk.word_tokenize 方法。例子:

'hi-there', 'me-you'

我曾尝试使用 RegexpTokenizer 并编写一个正则表达式,但我以某种方式使它无法像 word_tokenize 方法那样运行并排除“-”。

输入:'你好,我是人造人'

我正在寻找的输出:
['hello','I','am','an','artificial-human']

最佳答案

Jay 给您的答案将正确分离由破折号连接的单词,但您必须随后使用单词二元组来了解这些单词组合。

例如,如果您之后正在执行 TF-IDF,您可以像这样生成它:

TfidfVectorizer(ngram_range = (1,2)) 

这将生成一个向量化器,将单词的 unigrams 和 bigrams 考虑在内。

您也可以将破折​​号替换为空,然后将两个单词合并为一个,然后将这些单词单独标记为一个单词,并将破折号分隔为整个单词。
text = text.replace('-', '')
text = nltk.tokenize.word_tokenize(text)

输出:
['hello','I','am','an','artificialhuman']

关于python - NLTK 单词标记除带有破折号的单词外的所有单词,例如 ('hi-there' , 'me-you' ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62416738/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com