我正在研究一個將比較兩個.csv文件的程序。將相關數據從一個csv文件中提取到一個數組數組後,我需要組合相關條目。例如,我希望把這個數組:如何在Ruby中結合相似數據的數組?
[["11/13/15", ["4001", "1392"], "INBOUND"],
["11/13/15", ["4090", "540"], "INBOUND"],
["11/13/15", ["1139", "162"], "INBOUND"],
["11/13/15", ["1158", "64"], "INBOUND"],
["11/13/15", ["4055", "352"], "OUTBOUND"],
["11/13/15", ["4055", "448"], "OUTBOUND"],
["11/13/15", ["4055", "352"], "OUTBOUND"],
["11/13/15", ["1139", "162"], "OUTBOUND"],
["11/13/15", ["1158", "64"], "OUTBOUND"],
["11/13/15", ["4091", "520"], "OUTBOUND"]]
成這樣:
[["11/13/15", ["4001", "1392"], "INBOUND"],
["11/13/15", ["4090", "540"], "INBOUND"],
["11/13/15", ["1139", "162"], "INBOUND"],
["11/13/15", ["1158", "64"], "INBOUND"],
["11/13/15", ["4055", "1152"], "OUTBOUND"],
["11/13/15", ["1139", "162"], "OUTBOUND"],
["11/13/15", ["1158", "64"], "OUTBOUND"],
["11/13/15", ["4091", "520"], "OUTBOUND"]]
對於數組的某些元素,如果項目在[0]
,[1][0]
和[2]
比賽的另外一個,然後創建一個新項目(數組),其項目爲[1][1]
,爲[1][1]
上所有項目的總和,並刪除舊數組。如果它會更容易,我可以改變提取相關數據的方式,以便[1]
的項目不是數組,而每行有4項而不是3個。
是連續結合這些元素? – tokland
數據將被排序,以便它看起來像頂部數組如果打印,所以是的(如果我理解你的問題)。 –
假設托克蘭的回答真的是你想要的,你的問題就是結果數組中'[4] [1] [1]'的值有一個拼寫錯誤,這是唯一的關鍵值。它應該是1152,而不是1115.我必須說你的問題很sl。。 – sawa