pandas實現sum()over()、count()over()等窗口函數

pandas利用transform實現窗口函數

array =  [
    ['a', 2, 29],
    ['a', 1, 18],
    ['a', 0, 18],
    ['b', 2, 25],
    ['b', 4, 12],
    ['c', 6, 21],
]
data = pd.DataFrame(array, columns=["name", "class", "score"])
# 去重計數:nunique
data['nunique'] = data.groupby('name')['name'].transform('nunique')

# 求和:sum
data['sum'] = data.groupby('name')['score'].('sum')

# 均值:mean
data['mean'] = data.groupby('name')['score'].transform('mean')

# 其餘統計函數類似
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章