2012-05-22 85 views
-1

創建它們的組合我在紅寶石比較兩個值,並在紅寶石

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

嘗試使用有效的ruby來描述問題(並用真實值而不是變量名稱)。 – tokland

+0

將編輯帖子,謝謝 –

+0

它是否是紅寶石?我必須誤解一些事情。 – texasbruce

回答

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]] 
+0

對我不清楚的問題抱歉,如果有幫助,我已經更新,謝謝! –