我有18个数据框的列表:
dfList = [df1, df2, df3, df4, df5, df6.....df18]
所有数据框都有一个共同的id列,因此很容易将它们与pd.merge 2一起连接在一起。有没有办法一次性加入它们,以便dfList作为单个数据帧返回?
1 个答案:
答案 0 :(得分:15)
我认为您需要concat
,但首先按公共列设置每个DataFrame
的索引:
dfs = [df.set_index('id') for df in dfList]
print pd.concat(dfs, axis=1)
如果需要加入merge
:
df = reduce(lambda df1,df2: pd.merge(df1,df2,on='id'), dfList)