Python - Pandas crosstab() - 格式化单元格值?
Python - Pandas crosstab() - formatting cell values?
不确定是否可能,但如果我可以将百分比格式应用于由 pd.crosstab()
生成的单元格,那会很好,因为我正在使用 normalize='columns'
选项。
它们是百分比结果,因此显示为百分比会很好。
可以做到吗?
或者可能存在不同的交叉表功能可以完成?
我到处找了找也没找到,但这并不意味着不可能(也许吧!)
非常感谢。
pd.crosstab()
给你正确的结果。
foo = pd.Categorical(['a', 'b', 'a', 'a'], categories=['a', 'b', 'c'])
bar = pd.Categorical(['d', 'e', 'e', 'd'], categories=['d', 'e', 'f'])
result = pd.crosstab(foo, bar, normalize='columns')
如果你只想用百分比显示它们,你可以使用样式格式化程序:
result.style.format("{:.0%}")
哪个应该产生这个输出:
col_0 d e
row_0
a 100% 50%
b 0% 50%
不确定是否可能,但如果我可以将百分比格式应用于由 pd.crosstab()
生成的单元格,那会很好,因为我正在使用 normalize='columns'
选项。
它们是百分比结果,因此显示为百分比会很好。
可以做到吗?
或者可能存在不同的交叉表功能可以完成?
我到处找了找也没找到,但这并不意味着不可能(也许吧!)
非常感谢。
pd.crosstab()
给你正确的结果。
foo = pd.Categorical(['a', 'b', 'a', 'a'], categories=['a', 'b', 'c'])
bar = pd.Categorical(['d', 'e', 'e', 'd'], categories=['d', 'e', 'f'])
result = pd.crosstab(foo, bar, normalize='columns')
如果你只想用百分比显示它们,你可以使用样式格式化程序:
result.style.format("{:.0%}")
哪个应该产生这个输出:
col_0 d e
row_0
a 100% 50%
b 0% 50%