如何用numpy数组找到列表的最小值

0 投票
1 回答
1484 浏览
提问于 2025-04-18 04:24

我有一个列表,里面包含一个值和一个numpy数组,像这样:

    arr = [(0.5, array([ 0.,  0.,  0., ...,  0.,  0.,  0.])), (1.2, array([ 0.,  0.,  0., ...,  0.,  
    0.,  0.])), (3.5, array([ 0.,  0.,  0., ...,  0.,  0.,  0.]))]

我该如何仅根据每个列表项的第一个值来找到最小值呢?我想要的结果应该是:

   result = (0.5, array([ 0.,  0.,  0., ...,  0.,  0.,  0.])) 

因为0.5比1、2和3.5都小。

1 个回答

0

好吧,使用 min。它会给你最小的值。


如果你的整数中可能会有重复的值,你就需要用 min 加上一个关键字:

min(arr, key=lambda num_ar: num_ar[0])

这样可以避免它去比较第二个项目。

撰写回答