我正在尝试合并具有相同架构的>=2
文件。
文件将包含重复的条目,但行将不相同,例如:
file1:
store_id,address,phone
9191,9827 Park st,999999999
8181,543 Hello st,1111111111
file2:
store_id,address,phone
9191,9827 Park st Apt82,999999999
7171,912 John st,87282728282
Expected output:
9191,9827 Park st Apt82,999999999
8181,543 Hello st,1111111111
7171,912 John st,87282728282
如果您注意到:
9191,9827 Park st,999999999 and 9191,9827 Park st Apt82,999999999
基于商店标识和电话号码是相似的,但是我从文件2中选择了它,因为地址更具描述性。在
store_id+phone_number
是我查找位置和查找重复项的复合主键(store_id足够在上面的示例中找到它,但我需要一个基于多个列值的键)
问题:
-我需要合并具有相同架构但有重复行的多个CSV文件。
-其中,行级合并应该具有根据行的值选择行的特定值的逻辑。就像从文件1中提取的电话和从文件2中提取的地址。
-一个或多个列值的组合将定义行是否重复。在
用熊猫能做到这一点吗?在
将它们组合在一起的一种方法是使用merge(在store_id和number上,如果这些是索引,那么这将是一个join而不是merge):
然后,您可以使用^{} 来选择}:
^{pr2}$address_y
,否则{不如使用
concat
、groupby
、agg
,然后编写一个agg函数来选择正确的值:相关问题 更多 >
编程相关推荐