2 回答

TA貢獻(xiàn)1841條經(jīng)驗(yàn) 獲得超3個(gè)贊
使用transform從添加一列回原稿DF groupby聚集,transform返回Series其索引對準(zhǔn)原稿DF:
In [123]:
g = df.groupby('c')['type'].value_counts().reset_index(name='t')
g['size'] = df.groupby('c')['type'].transform('size')
g
Out[123]:
c type t size
0 1 m 1 3
1 1 n 1 3
2 1 o 1 3
3 2 m 2 4
4 2 n 2 4

TA貢獻(xiàn)1770條經(jīng)驗(yàn) 獲得超3個(gè)贊
另一個(gè)解決方案:transform len
df['size'] = df.groupby('c')['type'].transform(len)
print df
c type size
0 1 m 3
1 1 n 3
2 1 o 3
3 2 m 4
4 2 m 4
5 2 n 4
6 2 n 4
添加回答
舉報(bào)