【发布时间】:2017-11-19 02:46:36
【问题描述】:
为了让问题易于理解,我的问题是我想统计一些变量的数量,这是我的测试代码和输出
>>> g = df_data[['COUNTRY', 'STATE', 'CITY']].groupby(
['COUNTRY', 'STATE', 'CITY'])['COUNTRY'].count()
>>> g
COUNTRY STATE CITY
2 10.0 0.0 56643
40.0 18
60.0 596
nan 131
11.0 0.0 20
12.0 0.0 5
13.0 0.0 7
Name: COUNTRY, dtype: int64
我想要这样的输出
>>> g
COUNTRY STATE CITY COUNT PERCENT
2 10.0 0.0 56643 56643/number_of_total_record
2 10.0 40.0 18 18/number_of_total_record
2 10.0 60.0 596 ...
2 10.0 nan 131 ...
2 11.0 0.0 20 ...
2 12.0 0.0 5 ...
2 13.0 0.0 7 ...
Name: COUNTRY, dtype: int64
我该怎么做?
【问题讨论】:
-
您希望 PERCENT 中的值与 COUNT 相同吗?
-
@pyd,当然不是。 PERCENT 是 COUNT 的百分比。
-
试试
g[["COUNTRY","STATE"]]=g[["COUNTRY","STATE"]].ffill()
标签: python pandas pandas-groupby