我的表格如下:
ID SCORE
A NaN
A NaN
B 1
B 2
C 5
我想要以下输出:
ID SUM_SCORE SIZE_SCORE
A NaN 2
B 3 2
C 5 1
因为我想保留NaN的,所以我需要使用sum(min_count=1)
。因此,到目前为止,我有以下几点:
grp = df.groupby('ID')
sum_score = grp['SCORE'].sum(min_count=1).reset_index()
size_score = grp['SCORE'].size().reset_index()
result = pd.merge(sum_score, size_score, on=['ID'])
这感觉真的很不雅。有没有更好的方法来获得我想要的结果
您可以使用以下方法进行聚合:
相关问题 更多 >
编程相关推荐