You need to enable JavaScript to run this app. 如何在R中按自定义规则对月份类数据项分组、计算组均值并完成可视化绘图
优惠活动
大模型
产品
解决方案
定价
更多

如何在R中按自定义规则对月份类数据项分组、计算组均值并完成可视化绘图

R语言月份分组计算均值并绘图的实现方案

前置说明

  • 你提供的原始向量长度不匹配(Month共12个、year共2个、Values共16个),直接构建数据集会触发R的长度不等报错,后续示例先按观测对齐的逻辑搭建可运行的长表结构,分组、计算、绘图的通用逻辑可直接套用到你的真实数据集上
  • 分组规则完全匹配需求:1-4月为第一组、5-8月为第二组、9-12月为第三组

第一步:加载依赖包,搭建规范数据集

# 加载工具包
library(dplyr) # 用于数据分组、聚合计算
library(ggplot2) # 用于可视化绘图
# 整理长度对齐的示例数据集,真实数据可直接替换原向量内容
Month<-c("January","February","March","April","May","June","July","August","September","October","November","December",
         "January","February","March","April")
year<-c(rep(2020,12), rep(2021,4))
Values<-c(29,43,75,37,89,88,45,64,24,15,26,35,78,93,86,90)
# 整合为标准数据框
df <- data.frame(Month, year, Values)

第二步:按规则为月份匹配分组标签

通过建立英文月份和自然月序号的映射关系,避免字符串匹配出错,再按要求划分三个组别:

# 构建月份与自然月序号的对应关系
month_seq <- c("January"=1, "February"=2, "March"=3, "April"=4,
               "May"=5, "June"=6, "July"=7, "August"=8,
               "September"=9, "October"=10, "November"=11, "December"=12)
df$month_num <- month_seq[df$Month]
# 划分目标分组
df <- df %>% 
  mutate(month_group = case_when(
    month_num %in% 1:4 ~ "1-4月",
    month_num %in% 5:8 ~ "5-8月",
    month_num %in% 9:12 ~ "9-12月"
  ))

第三步:计算分组对应的平均值

可按需选择计算维度:

  • 分年份统计每个月份组的均值
# 按年份+分组维度计算均值
group_mean_by_year <- df %>% 
  group_by(month_group, year) %>% 
  summarise(avg_value = mean(Values), .groups = "drop")
  • 跨年份统计每个月份组的整体均值
# 仅按分组维度计算全量数据的均值
group_mean_overall <- df %>% 
  group_by(month_group) %>% 
  summarise(avg_value = mean(Values), .groups = "drop")

第四步:基于分组均值绘图

提供两种常用绘图场景的代码,可按需调整样式参数:

  • 分年份对比的分组均值柱状图
ggplot(group_mean_by_year, aes(x = month_group, y = avg_value, fill = factor(year))) +
  geom_col(position = position_dodge(0.7), width = 0.6) +
  labs(x = "月份分组", y = "数值平均值", fill = "统计年份") +
  theme_bw()
  • 全量数据下的整体分组均值柱状图
ggplot(group_mean_overall, aes(x = month_group, y = avg_value)) +
  geom_col(fill = "#2c7fb8", width = 0.6) +
  labs(x = "月份分组", y = "全量数据的数值平均值") +
  theme_bw()

注意:如果你的数据集使用中文月份字段,仅需调整month_seq中的映射内容,其余分组、计算、绘图逻辑无需修改。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.23 04:45:00