【问题标题】:Remove keywords which are not bigram or trigram (Yake)删除不是二元组或三元组的关键字(Yake)
【发布时间】:2021-06-30 10:21:46
【问题描述】:

我正在使用 Yake(Yet Another Keyword Extractor)从数据框中提取关键字。 我只想提取二元组和三元组,但 Yake 只允许设置最大 ngram 大小而不是最小大小。您将如何删除它们?

例子df.head(0):

文字: '哎呀,是的,我喃喃自语,语言转换现在处于不确定状态。'

关键词: '[('oui', 0.04491197687864554), ('语言转换',0.09700399286574239), ('喃喃自语', 0.15831692877998726)]'

我想从关键字列中删除 oui、mumbled 及其分数。

感谢您的宝贵时间!

【问题讨论】:

    标签: python dataframe keyword n-gram


    【解决方案1】:

    如果您的问题是关键字列表包含一些字母组​​合,您可以简单地进行过滤,忽略不带空格的单词并创建一个新列表。我给你举个例子:

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

    【讨论】:

      【解决方案2】:

      如果您需要处理 Yake 的 mono-gram 情况,只需将输出通过一个过滤器,该过滤器仅在该元组的第一个元素中有空格或 str.该元素的 split() 导致超过 1 个子元素。如果您正在使用函数并将其应用于数据框,请将此步骤包含在该函数中。

      【讨论】:

        猜你喜欢
        • 2020-10-09
        • 2021-01-30
        • 1970-01-01
        • 2018-01-29
        • 2017-09-21
        • 2018-10-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多