我想比较两个 CSV 之间的两列,找到部分字符串匹配项,然后将匹配行中的所有数据(包括列内的等效项)附加到第一个 CSV 中的正确索引处,然后在第三个 CSV 中输出编译后的匹配项,而无需编辑前两个 CSV 中的任何一个。第一个 CSV 中的所有行都必须出现在第三个中,无论是否找到匹配项,但只有第二个 CSV 中的匹配行。例如:
CSV_1 CSV_2
Name City Date Name_of_thing City_of_Origin Time
Examp. Bton 7/11 huh, inc. Lton, AMERICA 7/10/2020 00:00
Nomatch Cton 10/10 THE EXAMPLE, LLC Bton, USA 7/11/2020 00:00
会显示为
CSV_3
Name City Date Name_of_thing City_of_Origin Time
Examp. Bton 7/11 THE EXAMPLE, LLC Bton, USA 7/11/2020 00:00
Nomatch Cton 10/10
我早些时候在这里发帖询问模糊匹配方法(Record linking two large CSVs in Python?),但解决方案的时间效率非常低,所以我希望简单的正则表达式搜索就足够了。这些文件都非常大而且长度不一样,所以我想知道是否有一种解决方案可以有效地将 CSV_1 中的所有条目与 CSV_2 中的条目进行比较。
不幸的是,项目的限制不允许我将 CSV 加载到数据库中,这会使这变得容易得多,所以我需要完全依赖 Pandas。
人到中年有点甜
相关分类