【发布时间】:2020-08-22 00:52:29
【问题描述】:
我有两个 CSV 文件需要帮助映射/合并:
CSV 文件 1:
"ID","Name","Flavor"
"45fc754d-6a9b-4bde-b7ad-be91ae60f582","test1","m1.medium"
"83dbc739-e436-4c9f-a561-c5b40a3a6da5","test2","m1.tiny"
"ef68fcf3-f624-416d-a59b-bb8f1aa2a769","test3","m1.medium"
CSV 文件 2:
"Name","RAM","Disk","VCPUs"
"m1.medium",4096,40,2
"m1.xlarge",16384,160,8
"m1.tiny",128,1,1
理想的输出是:
"ID","Name","Flavor","RAM","Disk","VCPUs"
"45fc754d-6a9b-4bde-b7ad-be91ae60f582","test1","m1.medium",4096,40,2
"83dbc739-e436-4c9f-a561-c5b40a3a6da5","test2","m1.tiny",128,1,1
"ef68fcf3-f624-416d-a59b-bb8f1aa2a769","test3","m1.medium",4096,40,2
请注意,CSV 文件 1 中的 Flavor 和 CSV 文件 2 中的 Name 相同。名称上的差异是由于用于提取信息的工具不同造成的。
另请注意,CSV File2 有一个 flavor/name m1.xlarge。如上所述,如果在 CSV File1 中未找到 m1.xlarge flavor/name,则应将其从合并输出中丢弃。
我整天都在做这件事,结果好坏参半。任何想法将不胜感激。
【问题讨论】:
-
你的问题是你没有指定除'mapping/merging'以外的操作。您是否只是在 CSV2 中搜索第一个(?)也有“m1.medium”的行?还是最后一次? CSV2 中的第一个字段是唯一的吗?等等。我想为 /yourself/ 指定“映射/合并”操作至少完成了 50% 的工作。
-
到底是什么问题?请更具体。请参阅How to Ask、help center。
-
@Javier 您希望 CSV 在名称/风味列上加入,还是将所有列合并到一个文件中,将行保留在原处?
标签: python bash shell csv export-to-csv