【发布时间】:2020-06-28 01:44:14
【问题描述】:
我在一个文件夹中有多个 CSV 文件(例如 200 个),我想将它们合并到一个唯一的数据框中。例如,每个文件有 3 列,其中 2 列在所有文件中是通用的(Country 和 Year),第三列在每个文件中是不同的。
例如,一个文件具有以下列:
Country Year X
----------------------
Mexico 2015 10
Spain 2014 6
其他文件可以是这样的:
Country Year A
--------------------
Mexico 2015 90
Spain 2014 67
USA 2020 8
我可以读取这些文件并将它们与以下代码合并:
x = pd.read_csv("x.csv")
a = pd.read_csv("a.csv")
df = pd.merge(a, x, how="left", left_on=["country", "year"],
right_on=["country", "year"], indicator=False)
这会产生我想要的输出,如下所示:
Country Year A X
-------------------------
Mexico 2015 90 10
Spain 2014 67 6
USA 2020 8
但是,我的问题是对每个文件做前面的处理,有200多个,我想知道我是否可以使用循环(或其他方法)来读取文件并将它们合并成一个唯一的数据框。
非常感谢,希望我说的够清楚了。
【问题讨论】:
标签: python pandas loops dataframe merge