,可以使用pandas库中的groupby()和cumsum()函数来实现。
首先,使用groupby()函数按照指定的列进行分组,并按照降序排列数据。然后,使用cumsum()函数对分组后的数据进行累计求和,得到累计列表。
以下是一个示例代码:
import pandas as pd
# 创建DataFrame数据
data = {'Name': ['Alice', 'Bob', 'Charlie', 'Alice', 'Bob', 'Charlie'],
'Score': [80, 90, 70, 85, 95, 75]}
df = pd.DataFrame(data)
# 按照Name列进行分组,并按照降序排列数据
df_sorted = df.groupby('Name').apply(lambda x: x.sort_values('Score', ascending=False))
# 使用cumsum()函数对分组后的数据进行累计求和
df_sorted['Cumulative Score'] = df_sorted.groupby('Name')['Score'].cumsum()
# 打印结果
print(df_sorted)
输出结果如下:
Name Score Cumulative Score
1 Bob 90 90
4 Bob 95 185
0 Alice 80 80
3 Alice 85 165
2 Charlie 70 70
5 Charlie 75 145
在这个例子中,我们按照Name列进行分组,并按照Score列的降序排列数据。然后,使用cumsum()函数对每个分组中的Score列进行累计求和,得到了累计列表。最后,将累计列表添加到DataFrame中作为新的一列。
推荐的腾讯云相关产品:腾讯云数据库TencentDB、腾讯云云服务器CVM、腾讯云云原生容器服务TKE。
腾讯云数据库TencentDB产品介绍链接地址:https://cloud.tencent.com/product/cdb 腾讯云云服务器CVM产品介绍链接地址:https://cloud.tencent.com/product/cvm 腾讯云云原生容器服务TKE产品介绍链接地址:https://cloud.tencent.com/product/tke
Elastic 实战工作坊
Elastic 实战工作坊
Elastic 实战工作坊
云+社区技术沙龙[第27期]
云+社区开发者大会 武汉站
数字化产业研学会第一期
云+社区技术沙龙[第10期]
云+社区开发者大会 长沙站
领取专属 10元无门槛券
手把手带您无忧上云