Jupyter中的Pandas DataFrames:宽度相等且居中的列

Car*_*osE 2 python pandas jupyter-notebook

我正在使用Jupyter笔记本,并希望显示一个pandas DataFrame,将相同的宽度应用于所有列,所有值都居中.在不导入库的情况下,实现这一目标的最简单方法是什么?

import pandas as pd
raw_data = {'regiment': ['Nighthawks', 'Dragoons'], 
    'company': ['1st', '2nd'], 
    'name': ['Miller', 'Jacob'], 
    'preTestScore': [4, 24],
    'postTestScore': [25, 94]}
df = pd.DataFrame(raw_data, columns = ['regiment', 'company', 'name', 'preTestScore', 'postTestScore'])
df
Run Code Online (Sandbox Code Playgroud)

未对齐的列

Jul*_*rec 6

大熊猫0.17.1的新内容是pd.Styler:

raw_data= {'regiment': ['Nighthwawks','Dragons'],
            'company':['1st','2nd'],
            'name':['Miller', 'Ali'],
            'preTestScore':[4,120]}
df = pd.DataFrame(raw_data)

d = dict(selector="th",
    props=[('text-align', 'center')])

df.style.set_properties(**{'width':'10em', 'text-align':'center'})\
        .set_table_styles([d])
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

  • 将输出也格式化为代码(缩进 4 个空格)。通常`print(df)`会完成这项工作,只需复制并粘贴它,然后选择你的行并点击`{}`或按`CTRL`+`K` (2认同)