比方说,我有一个嵌套的字典,看起来像:
{ 'word1':
{'VERB': 129}
{'NOUN': 151}
{'DET': 26426}
...
}
我想从嵌套字典中获取DET
,因为它的频率最高。
我尝试通过迭代dict[word1]
来做到这一点,但似乎效率很低。有简单的方法可以做到这一点吗?
答案 0 :(得分:0)
*编辑了所有内容,并给予了更多关注。希望对您有所帮助。
list_of_keys = list(dictionary.keys())
list_of_values = list(dictionary.values())
max_value = max(list_of_values)
the_key = list_of_keys[list_of_values.index(max_value)]
答案 1 :(得分:0)
您可以尝试熊猫:
import pandas as pd
dictionary = {'word1': {'VERB': 129, 'NOUN': 151, 'DET': 26426}, 'word2': {'VERB': 129, 'NOUN': 151, 'DET': 26476}}
df = pd.DataFrame(dictionary)
# word1 word2
# DET 26426 26476
# NOUN 151 151
# VERB 129 129
df.apply(lambda row: row.max(), axis=1).idxmax()
# 'DET'
或者,如果您想要更简洁的内容:
pd.DataFrame(dictionary).apply(lambda row: row.max(), axis=1).idxmax()
# 'DET'
希望这会有所帮助!