我有以下类型的数组
[[y,x], [y,w], [m,e], [m,t],[a,b]]
我如何将其转为
[[y, [x,w]], [m, [e,t]], [a,[b]]
基本上按照第一个元素
对所有数组进行分组答案 0 :(得分:2)
a = [['y','x'], ['y','w'], ['m','e'], ['m','t'],['a','b']]
a.group_by(&:first).map { |c, xs| [c, xs.map(&:last)] }
# => [["y", ["x", "w"]], ["m", ["e", "t"]], ["a", ["b"]]]