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

如何用Pandas将每日犯罪事件记录聚合为月度统计数?

解决方法

你可以通过以下步骤实现按ID和年月统计犯罪事件数量:

  • 第一步:确保日期列格式正确(若未转换的话):
    虽然你提到Date列已是datetime64[ns]类型,但若需要转换,执行:

    df['Date'] = pd.to_datetime(df['Date'])
    
  • 第二步:提取年月信息
    从Date列生成Month列,格式为YYYY-MM:

    df['Month'] = df['Date'].dt.strftime('%Y-%m')
    

    也可以用周期类型生成后转字符串,更适配时间序列操作:

    df['Month'] = df['Date'].dt.to_period('M').astype(str)
    
  • 第三步:分组统计事件数
    按ID和Month分组,统计每组的事件数量:

    result_df = df.groupby(['ID', 'Month'])['Crime'].count().reset_index(name='Count')
    

    用size()替代count()也能得到相同结果:

    result_df = df.groupby(['ID', 'Month']).size().reset_index(name='Count')
    
  • 第四步:格式化计数(可选)
    若要给数字添加千位分隔符,执行:

    result_df['Count'] = result_df['Count'].apply(lambda x: f"{x:,}")
    

最终的result_df就是你需要的格式,包含每个ID每月的事件统计数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 13:57:13