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

如何在R语言中将data.frame每4行(周数据)聚合为月度总分?

R语言:按每4周分组计算月度总得分之和

方法1:使用dplyr包(代码更直观)

假设你的数据框名为weekly_data,其中包含需要求和的total_score列,执行以下代码:

library(dplyr)

monthly_summary <- weekly_data %>%
  # 为每行分配对应月份:每4周为1个月,从1开始编号
  mutate(month = ceiling(row_number() / 4)) %>%
  # 按月份分组,计算总得分之和
  group_by(month) %>%
  summarise(SumScore = sum(total_score, na.rm = TRUE)) %>% # na.rm=TRUE处理可能的缺失值
  ungroup()

# 输出结果
monthly_summary

方法2:使用Base R(无需额外安装包)

如果不想加载第三方包,用基础R代码实现:

# 生成月份分组标识
weekly_data$month <- ceiling(seq_len(nrow(weekly_data)) / 4)

# 按月份分组求和
monthly_summary <- aggregate(total_score ~ month, data = weekly_data, 
                             FUN = sum, na.rm = TRUE)

# 重命名求和列以匹配预期格式
colnames(monthly_summary)[2] <- "SumScore"

# 输出结果
monthly_summary

说明

  • 你的数据共120行,每4行一组会生成30个月份(1到30),完全匹配需求
  • 代码中na.rm = TRUE用于处理total_score中可能存在的缺失值,若确定无缺失可删除该参数
  • 如果数据包含日期列,需要按自然月分组而非固定4周,可补充日期列信息后调整分组逻辑

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 04:22:17