我有Ruby
data = [[a, foo, 10, 1990],[b, foo2, 10, 1990],[c, foo3, 10, 1990],[d, foo4, 10, 1990], [e, foo5, 10, 1990]]
response = {{a, false},{b, false},{c, false},{e, false}}
响应是数据的结果,并带有ID数据和新值。我想做的是产生一个新值,其中使用响应来查找值中的所有其他数据并生成一个新数组,如
new = [[a, foo, 10, 1990, false],[b, foo2, 10, 1990, false],[c, foo3, 10, 1990, false], [e, foo5, 10, 1990, false]]
响应只包含数据中的元素,但不包含所有元素。
我尝试使用.each迭代数据 - 但我似乎无法检查响应数据。我不知道怎么做。
由于
答案 0 :(得分:1)
在你的问题中(2)不是数组而且(3)不是哈希,所以我必须推测你真正想要的是什么。
a = [[1,2,3],[2,3,4],[4,5,6]]
b = {1=>false, 2=>false}
ah = a.group_by(&:first)
b.map{|k,v| ah[k].first + [v]}
=> [[1, 2, 3, false], [2, 3, 4, false]]