【发布时间】:2019-05-03 14:43:36
【问题描述】:
假设我有三个数据帧,我在多索引的帮助下水平连接:
df1 = pd.DataFrame(data=np.random.randint(0, 100, (4, 5)), columns=list('ABCDE'))
df2 = pd.DataFrame(data=np.random.randint(0, 100, (4, 5)),columns=list('AGHIJ'))
df3 = pd.DataFrame(data=np.random.randint(0, 100, (4, 5)),columns=list('ALMNP'))
dfs = []
dfs.append(df1)
dfs.append(df2)
dfs.append(df3)
result = pd.concat(dfs, axis=1, keys=range(len(dfs)))
如果我按第一个索引分组,我应该得到我的第一个数据帧,如果我查看它的列列表,它应该是 ABCD,但事实并非如此。
print(result.groupby(axis=1, level=0).get_group(0).columns.levels[1])
给我 df1、df2 和 df3 的所有列
【问题讨论】:
标签: python pandas dataframe merge