你好朋友,我对熊猫中嵌套的value_counts非常困惑
我有示例数据框:
SenderID Status long
john 1 2
john 0 1
eddie 1 1
eddie 1 2
eddie 1 2
eddie 0 1
我想要这样的输出:
Sender ID Status long sum
John 0 1 1
2 0
1 1 0
2 1
eddie 0 1 1
2 0
1 1 1
2 2
有人知道吗?谢谢,我使用pd.series.value_counts但没有用
答案 0 :(得分:0)
我认为需要groupby
和size
进行汇总计数,然后按reindex
中的MultiIndex.from_product
添加缺失的类别:
df = df.groupby(['SenderID','Status','long']).size()
mux = pd.MultiIndex.from_product(df.index.levels, names=df.index.names)
df = df.reindex(mux, fill_value=0).reset_index(name='count')
print (df)
SenderID Status long count
0 eddie 0 1 1
1 eddie 0 2 0
2 eddie 1 1 1
3 eddie 1 2 2
4 john 0 1 1
5 john 0 2 0
6 john 1 1 0
7 john 1 2 1