【问题标题】:pandas dataframe style formatting熊猫数据框样式格式
【发布时间】:2020-08-03 11:21:00
【问题描述】:

在这个例子中

import numpy as np
import pandas as pd
from itertools import product

df = pd.DataFrame({'Value':np.arange(10001,10007)}, 
    index=list(product(*[['A','B'],['a','b','c']])))
df.index = pd.MultiIndex.from_tuples(df.index, names=['Caps','Lower'])

df; df.style.format("{:,}")

当 df 输出到 Jupyter 笔记本时,Caps 列中的值与顶部对齐。但是,当在 Jupyter 笔记本中输出 df.style.format("{:,}") 时,Caps 列中的值会居中。有没有办法迫使这些价值观处于最高水平? (即它们应该与a 在同一行,而不是与b 在同一行)。

【问题讨论】:

    标签: python-3.x pandas jupyter-notebook pandas-styles


    【解决方案1】:

    您可以将set_table_stylesselector 一起使用:

    df.style.format("{:,}").set_table_styles([{'selector':'th',
                                               'props':[('vertical-align','top')]}])
    

    输出:

    【讨论】:

      【解决方案2】:

      默认情况下,pandas 将索引标签显示在列标签下方的一行。出于显示目的,您可以通过重置索引将它们放在同一水平线上。

      df.reset_index()
      
         Caps Lower Value
      0   A   a   10001
      1   A   b   10002
      2   A   c   10003
      3   B   a   10004
      4   B   b   10005
      5   B   c   10006
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-03-17
        • 1970-01-01
        • 2017-10-04
        • 2017-08-25
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多