我试图在 pandas 中获得类似的 excel 功能,主要是类型行为的百分比。使用以下数据:
{'A': ['a', 'b', 'b', 'a', 'a', 'a', 'b', 'b', 'b', 'a', 'a', 'a', 'b'],
'C': ['e', 'e', 'e', 'f', 'f', 'f', 'f', 'f', 'f', 'f', 'f', 'e', 'e'],
'B': ['c', 'c', 'c', 'c', 'c', 'd', 'd', 'd', 'd', 'd', 'c', 'c', 'd'],
'D': ['g', 'g', 'h', 'h', 'g', 'g', 'h', 'h', 'g', 'g', 'h', 'h', 'g'],
'V1': [84.0, 440.0, 423.0, 63.0, 990.0, 192.0, 169.0, 387.0, 934.0, 208.0, 834.0, 923.0, 230.0],
'V2': [120.0, 942.0, 153.0, 284.0, 517.0, 695.0, 37.0, 30.0, 237.0, 56.0, 15.0, 696.0, 25.0]}
DataFrame
我从这本字典中创建了一个名为 df1 的对象。
我想最终显示:
B C V1 V2 V2 as Percent of B
c e 1870 1911 0.700770077
c f 1887 816 0.299229923
d e 230 25 0.023148148
d f 1890 1055 0.976851852
我可以通过执行从 Pandas pivot_table 获取pivot_table(df1,values=['V1','V2'],rows=['B','C'],aggfunc=numpy.sum,fill_value=0)
:
V1 V2
B C
c e 1870 1911
f 1887 816
d e 230 25
f 1890 1055
有人知道如何做最后一步来获得专栏吗?
谢谢!乔恩