Pandas建立两行表头:一行总标题,一行多列内容
Pandas建立两行表头:一行总标题,一行多列内容
在Pandas中,如果需要创建包含两行表头的DataFrame,其中一行是整个表格的总标题,占据所有列,而另一行则是每个具体列的标题,可以使用 MultiIndex 功能来实现。
步骤:
- 创建数据和列标题: 首先,准备好用于创建DataFrame的数据和列标题列表。2. 创建多级表头: 将总标题和列标题列表组合成一个嵌套列表,表示多级表头的结构。3. 将多级表头转换为MultiIndex对象: 使用
pd.MultiIndex.from_arrays()函数将嵌套列表转换为MultiIndex对象。4. 创建DataFrame: 使用pd.DataFrame()函数创建DataFrame,并将MultiIndex对象作为columns参数的值传递给该函数。
**示例代码:**pythonimport pandas as pd
创建数据data = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]columns = ['A', 'B', 'C']
创建多级表头header = [['总标题'], columns] # 总标题占所有列
将多级表头转换为MultiIndex对象multi_header = pd.MultiIndex.from_arrays(header)
创建DataFramedf = pd.DataFrame(data, columns=multi_header)
print(df)
输出结果:
总标题 A B C0 1 2 31 4 5 62 7 8 9
代码解读:
header = [['总标题'], columns]:创建一个嵌套列表表示多级表头。第一级只有一个元素 '总标题',占据所有列;第二级包含具体的列标题 'A', 'B', 'C'。*pd.MultiIndex.from_arrays(header):将嵌套列表header转换为MultiIndex对象。*pd.DataFrame(data, columns=multi_header):创建DataFrame,使用multi_header作为列标题,从而实现两行表头的效果。
总结:
通过使用 MultiIndex,我们可以轻松地在Pandas中创建包含两行表头的DataFrame,从而使数据展示更加清晰、易懂。
原文地址: https://www.cveoy.top/t/topic/fOlA 著作权归作者所有。请勿转载和采集!