首页 > 解决方案 > DataFrame Python中的分层列

问题描述

在此处输入图像描述请查看图像。在图片中,我希望它们作为列标题,而不是 1、2、... 作为后缀。

我想创建一个 DataFrame,这样我就有一个如下所示的分层结构:

1 2 3
AB AB AB

其中 1、2 和 3 是主列标题,A 和 B 是子列标题。

这是我的代码:df_table = pd.DataFrame()

c=1

for event in results_full:

table = event.results(decimals=[3,5,3,5,2,2])

table = table.add_suffix('_'+str(c))

df_table = pd.concat([df_table, table], axis=1)

c += 1

我不想将 1、2、... 作为后缀,而是将它们作为更高的列

谢谢你。

标签: pythonpandasdataframemultiple-columnshierarchical-data

解决方案


不确定如何将列表示为 2 个子列。但是,如果您将每个类别(A 和 B)的信息设置为不同的数据框,您可以将它们结合起来,这可能符合您的需求。假设 A 信息保存为 DF1,B 为 DF2:然后您可以使用 pd.concat([DF1, DF2], keys={"A": DF1, "B": DF2}) 希望这对您有所帮助。


推荐阅读