【问题标题】:How can I sort words in corpus based on multiple tags? Python, nltk如何根据多个标签对语料库中的单词进行排序? Python, nltk
【发布时间】:2017-03-05 19:06:42
【问题描述】:

我希望对单词及其标签列表进行排序,从标签数量最多的一个到最少的一个。

到目前为止,我有这个:

from collections import defaultdict

tagged = defaultdict(set)
for w in brown:
    tagged[w[0]].add(w[1])

for word in tagged:
    if len(tagged[word])>1:
        print (word, tagged[word])

它打印一个包含超过 1 个标签的所有单词的列表。如何对其进行排序以使顺序降序?

【问题讨论】:

    标签: python tags nltk


    【解决方案1】:

    试试这个:

    items = sorted(tagged.items(), key=lambda item: len(item[1]), reverse=True)
    for word, tags in items:
        if len(tags) <= 1:
            break
        print(word, tags)
    

    它将按值的长度按降序对所有条目进行排序。 循环在长度为 1 的条目开始打印之前停止。

    【讨论】:

    • 感谢您的帮助@lenz :)
    猜你喜欢
    • 1970-01-01
    • 2014-12-02
    • 2013-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-01
    • 2020-08-05
    相关资源
    最近更新 更多