首页 > 解决方案 > 如何找到这些值的最大值

问题描述

我有一些州及其人口,想打印出最大的州及其人口数量。

这是信息:

NSW 87
QLD 49
SA 14
VIC 54
WA 19

我想找到NSW 87要打印的最大值。我尝试使用max功能:

for i,j in zip(unique10,count10):
    print(max(i,j))

但这没有帮助:

TypeError: '>' not supported between instances of 'numpy.ndarray' and 'numpy.str_'

标签: pythonnumpysorting

解决方案


使用内置的maxand zip

import numpy as np

arr = np.array([['NSW' ,'QLD' ,'SA', 'VIC', 'WA'], [87, 49, 14, 54, 19]])
arr
# array([['NSW', 'QLD', 'SA', 'VIC', 'WA'],
#        ['87', '49', '14', '54', '19']], dtype='<U3')

max(zip(*arr), key=lambda x:x[1])

输出:

('NSW', '87')

推荐阅读