您的位置:首页 >打印表格时如何添加文本摘要
发布于2025-12-07 阅读(0)
扫一扫,手机访问

本文介绍如何使用 tabulate 库将两个 Pandas DataFrame 垂直连接成一个表格,其中一个 DataFrame 包含数据,另一个 DataFrame 包含文本摘要。我们将展示两种方法:一种是手动设置摘要列的宽度,另一种是动态调整摘要列的宽度以匹配数据 DataFrame 的宽度。通过这些方法,你可以创建包含数据和摘要信息的清晰、易读的表格。
在数据分析和报告中,有时需要在表格中包含文本摘要,以便更好地解释数据。tabulate 库是一个强大的工具,可以将数据以各种格式打印成表格。本文将介绍如何使用 tabulate 库将包含数据和摘要信息的两个 Pandas DataFrame 垂直连接成一个表格。
首先,需要安装 tabulate 库。可以使用 pip 命令进行安装:
pip install tabulate
假设我们有两个 Pandas DataFrame:df1 包含数据,df2 包含摘要。
import pandas as pd
data1 = {
'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [25, 30, 35],
'Height': [165, 182, 177]
}
df1 = pd.DataFrame(data1)
data2 = {
'Summary': ["Alice is the youngest", "Bob is the tallest"]
}
df2 = pd.DataFrame(data2)这种方法需要手动设置摘要列的宽度,使其足够容纳摘要文本。
import tabulate as t
t.PRESERVE_WHITESPACE = True
width1 = 10 # 设置数据列的宽度
width2 = width1 * df1.shape[1] + df1.shape[1]*2 # 设置摘要列的宽度,使其与数据列的总宽度匹配
str1 = t.tabulate(df1.applymap(f'{{:^{width1}}}'.format), list(df1),
tablefmt='outline',
stralign='center', numalign='center')
str2 = t.tabulate(df2.applymap(f'{{:^{width2}}}'.format), df2.columns,
tablefmt='outline',
stralign='center', numalign='center')
print(str1 + '\n' + '\n'.join(str2.splitlines()[1:]))这段代码首先定义了数据列的宽度 width1,然后根据数据列的数量和宽度计算出摘要列的宽度 width2。接下来,使用 tabulate 函数将两个 DataFrame 转换为字符串,并使用 applymap 函数将每个单元格的内容居中对齐。最后,将两个字符串连接起来,并打印输出。
代码解释:
这种方法可以动态调整摘要列的宽度,使其与数据 DataFrame 的宽度匹配。
import tabulate as t
t.PRESERVE_WHITESPACE = True
str1 = t.tabulate(df1, list(df1), tablefmt='outline',
stralign='center', numalign='center')
H = str1.split('\n', 1)[0]
L = len(H)-H[1:].index('+')-5
str2 = t.tabulate(df2.applymap(f'{{:^{L}}}'.format),
list(df2), tablefmt='outline',
stralign='center', numalign='center')
print(str1 + '\n' + '\n'.join(str2.splitlines()[1:]))这段代码首先使用 tabulate 函数将数据 DataFrame 转换为字符串,然后计算出数据表格的宽度。接下来,使用 applymap 函数将摘要 DataFrame 中的每个单元格的内容居中对齐,并设置宽度为数据表格的宽度。最后,将两个字符串连接起来,并打印输出。
代码解释:
本文介绍了如何使用 tabulate 库将包含数据和摘要信息的两个 Pandas DataFrame 垂直连接成一个表格。通过手动设置摘要列的宽度或动态调整摘要列的宽度,可以创建包含数据和摘要信息的清晰、易读的表格。tabulate 库是一个强大的工具,可以帮助你更好地呈现数据。
上一篇:12306人脸识别失败解决方法
下一篇:Java类组合与聚合实现方法解析
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
9