我有兩個csv文件,每個文件有13列。如何使用保存數據的規則將兩個CSV與幾乎相同的數據集合並? (使用Ruby&FasterCSV)
每行的第一列包含一個唯一的字符串。有些複製在每個文件中,有些僅存在於一個文件中。
如果該行只存在於一個文件中,我想將它保留在新文件中。
如果它存在於兩者中,我想在同一行的某一列中保留具有某個值(或缺少某個值)的值。
例如:
文件1:
D600-DS-1991, name1, address1, date1
D601-DS-1991, name2, address2, date2
D601-DS-1992, name3, address3, date3
文件2:
D600-DS-1991, name1, address1, time1
D601-DS-1992, dave1, address2, date2
我會繼續的第一個文件的第一行,因爲第四列包含date
代替time
。 我會保留自第一列以來第一個文件的第二行,第一行值是唯一的。 我會將第二個文件的第二行作爲新文件的第三行,因爲它包含第二列中「name#」以外的文本。
我是否應該先將所有唯一值映射到另一個值,以便每個文件包含相同數量的條目 - 即使有些條目是空白的或僅具有填充數據?
我只知道一點ruby和python ......但我更喜歡用一個單獨的Ruby文件解決這個問題,因爲我可以更好地理解代碼。如果您無法在Ruby中完成,請隨時以不同的方式回答!
你到目前爲止試過了什麼?就目前而言,這只是要求有人爲你做骯髒的工作。 –
第一個文件是否總是乾淨或是否包含可能過時的行?如果是這樣,如果兩個文件在第四列中都有'time'作爲特定ID,會發生什麼? –
@Anthony我認爲與「一些在每個文件中重複」他意味着一個條目可以出現在這兩個文件中。 –