Skip to main content
 首页 » 编程设计

python之基于列表列表python的第一个元素的平均值

2025年05月04日31kenshinobiy

输入是击球手的跑垒列表。它应该返回击球手平均得分最高的国家。

我试图找到最高平均值,例如,当将下面的列表传递给我的方法时,它应该返回“巴基斯坦”。

[ 
["Pakistan", 23], 
["Pakistan", 127], 
["India", 3], 
["India", 71], 
["Australia", 31], 
["India", 22], 
["Pakistan", 81] 
] 

我试过:

创建两个字典:

total={'Australia': 31, 'India': 96, 'Pakistan': 231}   
division={'Australia': 1, 'India': 2, 'Pakistan': 3}  

考虑将两个字典的值相除并找到其中的最大值。

还有其他有效的方法吗?

感谢您的帮助。

请您参考如下方法:

您可以使用 pandas为此,您的代码如下:

import pandas as pd 
data = [ 
    ["Pakistan", 23], 
    ["Pakistan", 127], 
    ["India", 3], 
    ["India", 71], 
    ["Australia", 31], 
    ["India", 22], 
    ["Pakistan", 81] 
] 
df = pd.DataFrame(data, columns=['country', 'count']) 
grouped = df.groupby(['country']).mean().reset_index() 
highest = list(grouped.max()) 
print(highest) 

打印:

['Pakistan', '77']