pandas 数据框样式格式
pandas dataframe style formatting
在这个例子中
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 notebook 时,Caps 列中的值与顶部对齐。但是,当 df.style.format("{:,}")
在 Jupyter notebook 中输出时,Caps 列中的值居中。有没有办法强制这些值位于顶部? (即它们应该与 a
在同一行,而不是与 b
在同一行)。
默认情况下,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
您可以将 set_table_styles
与 selector
一起使用:
df.style.format("{:,}").set_table_styles([{'selector':'th',
'props':[('vertical-align','top')]}])
输出:
在这个例子中
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 notebook 时,Caps 列中的值与顶部对齐。但是,当 df.style.format("{:,}")
在 Jupyter notebook 中输出时,Caps 列中的值居中。有没有办法强制这些值位于顶部? (即它们应该与 a
在同一行,而不是与 b
在同一行)。
默认情况下,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
您可以将 set_table_styles
与 selector
一起使用:
df.style.format("{:,}").set_table_styles([{'selector':'th',
'props':[('vertical-align','top')]}])
输出: