[英]given column of month and its corresponding values, How to find max value in each year?
[英]Find the max value on a tuple with its corresponding pair
我有一个很长的 Python 元组,我想在其中找到最大值。 我有一些数值和它们的概率,元组样本是这样的:
(array([ 5, 5, 3, ..., -1, -4, --5]), array([ 0.25, 0.75, 0.8, ...0.05, 0.2, 0.6])
我想要的是能够提取最大的概率但得到相应的数值(X),基本上创建一个新的元组。 根据上面的数字,类似这样的事情:
> Max tuple: ([3,0.8])
例如,我已经完成了这样的事情new_tuple = max(map(max, tuple_list))[1]
,但它只给了我最高的概率而不是它对应的数字,我如何提取最高的第二个数字(概率)创建一个新的元组?
您可以压缩这两个元素并使用自定义键获得最大值。
>>> max(zip(*l), key=lambda x:x[1])
(3, 0.8)
你可以做:
>>> tuple(np.stack(data)[:,np.argmax(data[1])])
(3.0, 0.8)
您可以将两个数组zip
在一起,然后将一个key
函数传递给max
以选择具有第二个数组中最大元素的对。
>>> import numpy as np
>>> data = (np.array([ 5, 5, 3, -1, -4, -5]), np.array([ 0.25, 0.75, 0.8, 0.05, 0.2, 0.6]))
>>> max(zip(*data), key=lambda i: i[1])
(3, 0.8)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.