pandas форматирование стиля данных - PullRequest
0 голосов
/ 20 апреля 2020

В этом примере

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 выровнены по верху. Однако, когда df.style.format("{:,}") выводится в записной книжке Jupyter, значения в столбцах Caps центрируются. Есть ли способ заставить эти значения быть на вершине? (то есть они должны быть в той же строке, что и a, а не в той же строке, что и b).

Ответы [ 2 ]

0 голосов
/ 21 апреля 2020

Вы можете использовать set_table_styles с selector:

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

Выход:

enter image description here

0 голосов
/ 21 апреля 2020

По умолчанию 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...