从数据帧序列创建多索引数据帧
假设我有一个数据框的列表 [df1, df2, df3]
,每个数据框的样子如下:
> df1
median std
control 0.4 0.2
experiment 0.2 0.3
我该如何创建一个多重索引的数据框,把它们拼接在一起呢?就像这样:
df1 df2 df3
control experiment control experiment control experiment
median 0.4 0.2 ... ... ... ...
std 0.2 0.3 ... ... ... ...
1 个回答
19
你可以把数据框(dataframes)作为一个字典来提供(就像在重复的问题中提到的:python/pandas: 如何将两个数据框合并成一个带有层次列索引的框架?),然后字典的键会被使用:
pd.concat({'df1':df1, 'df2':df2, 'df3':df3}, axis=1)
另外一个选择是使用 keys
这个关键字参数:
pd.concat([df1, df2, df3], axis=1, keys=['df1', 'df2', 'df3'])