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

如何按省份分组、按月份统计累计感染数总和(R语言场景)

实现方案

你需要先从日期字段提取年月维度,再按「省份+年月」分组对感染数求和即可,以下提供两种常用实现方式:

方法1:tidyverse套件实现(可读性更高)

依赖dplyr做分组聚合、lubridate做日期处理,代码如下:

# 加载依赖包
library(dplyr)
library(lubridate)

result <- ds %>%
  # 日期列转格式,提取年月(统一为每月第一天格式,也可以转成"2021-04"字符串格式)
  mutate(month = floor_date(ymd(Date_of_publication), unit = "month")) %>%
  # 按省份、月份分组
  group_by(Province, month) %>%
  # 求和感染数,na.rm参数避免空值导致结果异常
  summarise(total_monthly = sum(Total_reported, na.rm = TRUE), .groups = "drop")

如果不需要日期格式只需要年月字符串,把mutate行替换为mutate(month = format(ymd(Date_of_publication), "%Y-%m"))即可。

方法2:Base R实现(无需额外安装包)

# 处理日期生成年月列
ds$month <- format(as.Date(ds$Date_of_publication), "%Y-%m")
# 分组求和
result <- aggregate(Total_reported ~ Province + month, data = ds, FUN = sum, na.rm = TRUE)

两种方法输出的结果均为每个省份对应每个月的感染数总和,可直接按需使用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 09:00:00