如果在数据框中我有如下数据:
Name Id
Alex 123
John 222
Alex 123
Kendal 333
所以我想添加一个将导致的列:
Name Id Subset Count
Alex 123 2
John 222 1
Alex 123 2
Kendal 333 1
我使用了下面的代码,但没有得到输出:
df['Subset Count'] = df.value_counts(subset=['Name','Id'])
答案 0 :(得分:2)
通过 groupby()
尝试:
df['Subset Count']=df.groupby(['Name','Id'])['Name'].transform('count')
或
通过 droplevel()
和 map()
df['Subset Count']=df['Name'].map(df.value_counts(subset=['Name','Id']).droplevel(1))