删除不是二元组或三元组的关键词(Yake)

3
我正在使用Yake(另一种关键字提取器)从数据框中提取关键字。我想仅提取二元组和三元组,但是Yake只允许设置最大ngram大小而不是最小大小。您将如何移除它们?
例如df.head(0):
文本: “oui,yes,i mumbled,the linguistic transition now in limbo。”
关键字: [('oui', 0.04491197687864554), ('linguistic transition', 0.09700399286574239), ('mumbled', 0.15831692877998726)]
我想从关键字列中删除oui、mumbled以及他们的分数。
谢谢您抽出时间!
2个回答

3

如果您的问题是关键词列表中包含一些单字,您可以简单地过滤掉没有空格的单词并创建一个新列表。以下是一个示例:

keywords_without_unigrams = []
for kw in keywords:
    if(' ' in kw[0]):
        keywords_without_unigrams.append(kw)
 

for kw in keywords_without_unigrams:
    print(kw)

1
如果您需要处理来自Yake的单词组合情况,只需通过过滤器将输出传递到结果列表中,仅当该元组的第一个元素中有空格或者该元素的str.split()结果包含多个子元素时才添加n-grams。如果您正在使用函数并将其应用于数据帧,请在该函数中包括此步骤。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接