如何根据多个标记对语料库中的单词进行排序?Python

2024-05-08 00:35:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我想对单词和它们的标签列表进行排序,从标签数量最多的一个到标签数量最少的一个。你知道吗

到目前为止,我有:

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个标签的所有单词的列表。如何排序,使其顺序是降序的?你知道吗


Tags: infromimport列表for数量排序标签
1条回答
网友
1楼 · 发布于 2024-05-08 00:35:23

试试这个:

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)

它将按值的长度降序排列所有条目。 循环在开始打印length-1条目之前停止。你知道吗

相关问题 更多 >