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

如何按县分组对累计确诊变量做差分,新增每日新增病例列?

实现方案

首先确保DataFrame中的date列是日期格式而非字符串,若未转换可先执行格式转换:

import pandas as pd
df['date'] = pd.to_datetime(df['date'])

之后按如下步骤计算新增病例:

  1. 按县和日期升序排序,保证每个县的数据按时间先后排列,避免差值计算出错
df = df.sort_values(by=['county', 'date'], ignore_index=True)
  1. 按县分组计算累计确诊的差值,直接生成new_cases列
df['new_cases'] = df.groupby('county')['confirmed'].diff()

补充说明

  • 每个县的第一条数据因为没有前一天的累计值,new_cases会默认返回NaN,和你需要的N/A效果一致
  • 该方法是pandas内置的向量化操作,性能远高于手动循环遍历每个县,非常适合你提到的大规模数据集使用
  • 如果需要处理数据修正导致的新增为负的异常情况,可以额外添加过滤逻辑:
# 将负数新增替换为0,可根据实际需求调整规则
df['new_cases'] = df['new_cases'].mask(df['new_cases'] < 0, 0)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 09:27:04