数组元素比较的数组 Ruby

Array of arrays element comparison Ruby

我有一个看起来像

的数组
[[1, 2, "2 mins"], [2, 3, "4 mins"], [3, 2, "2 mins"]]

如何过滤子数组,以便在位置 2 或相等的情况下获得相等元素数组的最小值?

ar = [[1, 2, "2 mins"], [2, 3, "4 mins"], [3, 2, "2 mins"]]
p ar.group_by{|sub_ar| sub_ar[1]}.min.last
# => [[1, 2, "2 mins"], [3, 2, "2 mins"]]

我喜欢下面的内容:

a = [[1, 2, "2 mins"], [2, 3, "4 mins"], [3, 2, "2 mins"]]

min_val = a.min_by { |e| e[1] }[1]
  #=> 2
a.select { |e| e[1] == min_val }
  #=> [[1, 2, "2 mins"], [3, 2, "2 mins"]]