Python,pandas连接多个数据帧

时间:2017-05-16 16:37:46

标签: python pandas join dataframe concatenation

我有一个csv文件列表,我使用pd.read_csv()

作为数据框加载

我目前正在尝试遍历csv列表并使用pd.concat()方法并将axis参数设置为1以按列添加所有数据帧。

它正如希望的那样工作但是我遇到的问题是,因为当我连接它们时所有数据框都具有相同的列名称,所以我得到例如十列所有关键字“日期”

无论如何,我可以给colums所有唯一名称示例London_Date,Berlin_Date?显然,名称基于数据框的名称。

1 个答案:

答案 0 :(得分:0)

如果您将密钥列表传递给concat(),则可以使用给定的密钥单独索引任何列,如下所示:

df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
                'B': ['B0', 'B1', 'B2', 'B3'],
                'C': ['C0', 'C1', 'C2', 'C3'],
                'D': ['D0', 'D1', 'D2', 'D3']},
                index=[0, 1, 2, 3])
df2 = df1
df3 = df1
add = pd.concat([df1, df2, df3], axis = 1, keys=['Group_1', 'Group_2', 'Group_3'])
print(add.Group_1.A) # or add.Group_2.B etc...