pandas 排序后表头中的字体自动加粗了,本来表头无边框线的,排序后都有边框了,请问怎么去掉加粗和边框线?
使用pandas,可以在排序后通过设置表格样式(如:字体大小、加粗、边框线等)来解决问题。
代码如下:
import pandas as pd
# 创建数据框
df = pd.DataFrame({'订单号': [20, 19, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1]})
# 排序
df = df.sort_values(by='订单号', ascending=False)
# 设置样式
df.style.set_caption('排序后表头无边框线且字体未加粗')
df.style.set_table_styles([{'selector': 'th', 'props': [('font-weight', 'normal'), ('border-style', 'none')]}])
# 输出
print(df)
在 pandas 中,排序后字体默认加粗和有边框线是因为 pandas 为了强调表头的重要性而这样做的。如果想要去掉表头字体的加粗和边框线,可以通过以下代码实现:
df = pd.read_csv("data.csv")
df = df.sort_values(by='column_name')
df.style.set_caption('').set_table_styles([{'selector': 'th', 'props': [('font-weight', 'normal'),('border-style', 'none')]}])
在上述代码中,首先读取 csv 文件并对其进行排序。然后通过 df.style 设置表格样式,其中 set_caption 用于设置表格的标题为空,set_table_styles 用于设置表格样式,其中通过 selector 指定对于表头进行样式设置,通过 props 指定具体的样式。