You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在DataFrame中按日期统计每日投篮命中数与出手数?

解决DataFrame按日期统计投篮命中数和出手数的问题

你用df.groupby("Date")['ShotMade','ShotTaken'].count()得不到预期结果,是因为count()统计的是非空值的数量,而你需要的是对每日的投篮数据求和——ShotMade要算每日命中数总和,ShotTaken要算每日出手数总和,应该用sum()方法替代。

正确代码(生成每日统计结果)

daily_stats = df.groupby("Date")[["ShotMade", "ShotTaken"]].sum().reset_index()

代码说明:

  • groupby("Date"):按日期对数据分组
  • sum():对每组的ShotMade和ShotTaken分别求和,正好匹配你需要的每日命中数、出手数
  • reset_index():将分组后的日期索引转为普通列,输出格式和你期望的一致

运行后得到的结果:

Date  ShotMade  ShotTaken
0  4/20/2020         2          4
1  4/21/2020         3          3
2  4/22/2020         2          5

若需在原DataFrame新增统计列

如果要在原有数据的每行都添加上当日的总命中数和总出手数,用transform()方法:

df["DailyShotMade"] = df.groupby("Date")["ShotMade"].transform("sum")
df["DailyShotTaken"] = df.groupby("Date")["ShotTaken"].transform("sum")

处理后的原DataFrame示例:

Date  ShotMade  ShotTaken  DailyShotMade  DailyShotTaken
0  4/20/2020         0          1              2               4
1  4/20/2020         0          1              2               4
2  4/20/2020         1          1              2               4
3  4/20/2020         1          1              2               4
...

内容的提问来源于stack exchange,提问作者Oscar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 12:02:51