我目前正在处理两个csv文件,base.csv和另一个csv文件output20170503.csv,这两个文件将每天生成,因此我的目标是重新设置每个输出的基础,以便它们与base.csv具有相同的数据
My base.csv:
ID,Name,Number,Shape,Sound
1,John,45,Round,Meow
2,Jimmy,78,Sphere,Woof
3,Marc,,Triangle,Quack
4,Yun,50,Triangle,Meow
5,Nyancat,,Round,Quack
我的输出\u 20170503.csv
ID,Name,Number,Shape,Sound
1,John,,Round,Meow
2,Jimmy,,Sphere,Woof
3,Marc,,Triangle,Quack
4,Yun,,Triangle,
5,Nyancat,,Round,Quack
6,Marc,,Square,Woof
7,Jonnn,,Hexagon,Chirp
这里的目标是将base.csv中的数据(ID为1-5)与输出\u 20170503.csv重新建立基础
我想要达到的目标:
ID,Name,Number,Shape,Sound
1,John,45,Round,Meow
2,Jimmy,78,Sphere,Woof
3,Marc,,Triangle,Quack
4,Yun,50,Triangle,Meow
5,Nyancat,,Round,Quack
6,Marc,,Square,Woof
7,Jonnn,,Hexagon,Chirp
我已经在寻找解决办法,但是我得到了什么
Merge two csv files (both of csv files have different columns, won't work for me)
Remove duplicates from a csv files (Appending base.csv with the output_20170503.csv and then remove the duplicates, won't work because they have different values for column Number)
任何帮助都将不胜感激,谢谢
您应该尝试使用
pandas
库,它非常适合数据操作。您可以轻松地读取csv文件并执行merge operation。您的解决方案可能如下所示:输出_-df上缺少的值现在已用基_-df中的值更新
您可以尝试这样做,我使用前两项作为键并生成dict,然后迭代
new
dict,如果键不在base
中,则更新base
dict:输出:
Python2.7+支持称为“dictionary comprehension”或“dict comprehension”的语法扩展,因此如果使用Python2.6,则需要将前三行替换为:
相关问题 更多 >
编程相关推荐