我有2个文件,一个csv文件和一个文本文件。我正在寻找一种使用两个特定列来比较它们的方法,一旦找到匹配项,我需要从匹配的行中获取另一列的值并将其放在另一个记录的相应列中。
csv有位置,时间,价值 txt还有位置,时间,值
我需要通过查找具有匹配位置和时间的行来比较这两个文件,一旦找到我需要从csv文件获取值并将其放入txt文件中匹配记录的值。 / p>
这是两个文件。 Book1.csv和book2.txt。
Book1.csv
LOCATION TIME VALUE
A 3/7/2014 7:00 -4.2
B 3/8/2014 4:00 -5.4
book2.txt
D,MSSDATA,ZONE,LOCATION ,TIME,VALUE
D,MSSDATA,ZONE,A ,3/7/2014 7:00,13
D,MSSDATA,ZONE,B ,3/7/2014 7:00,21
这两个文件都有LOCATION,TIME和VALUE。
我想要做的是:比较两个文件,如果LOCATION和TIME相同,将book2.txt中的VALUE替换为Book1.csv中的VALUE
例如。对于位置A,TIME 3/7/2014 7:00,我想替换book2.txt中的VALUE,即" 13"在Book1.csv中加载,即-4.2
对于位置B TIME 3/7/2014 7:00,我无法精确匹配Book1.csv中的数据。所以它不会被改变。
最后,我希望book2.txt如下:
D,MSSDATA,ZONE,1.0,LOCATION ,TIME,LOAD
D,MSSDATA,ZONE,1.0,A ,3/7/2014 7:00,-4.2
D,MSSDATA,ZONE,1.0,B ,3/7/2014 7:00,21
我已经写了一些基本代码来读取文件,但是如何比较和替换仍困扰着我。我想我需要用密钥{Location,time}
创建一个字典真的很感激有人可以提供帮助!谢谢!