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

R语言dplyr分组统计如何不区分大小写合并相同含义字段

R代码调整方案

核心解决思路:先统一Week列的大小写格式,再进行分组统计,即可将不同大小写写法的周四识别为同一类别计算均值。

修改后可运行完整代码

library(dplyr)
library(stringr)

Test <- structure(list(date1 = as.Date(c("2021-11-01","2021-11-01","2021-11-01","2021-11-01")),
                       date2 = as.Date(c("2021-10-22","2021-10-22","2021-10-28","2021-10-30")),
                       Week = c("Friday", "Friday", "Thursday", "thursday"),
                       Category = c("FDE", "FDE", "FDE", "FDE"),
                       time = c(4, 6, 6, 3)), class = "data.frame",row.names = c(NA, -4L))

meanTest1 <- Test %>%
  # 统一将Week列所有值转换为首字母大写格式
  mutate(Week = str_to_title(Week)) %>%
  group_by(Week, Category) %>%
  dplyr::summarize(`mean(time)` = mean(time), .groups = "drop")

运行输出结果

> meanTest1
# A tibble: 2 × 3
  Week     Category `mean(time)`
  <chr>    <chr>           <dbl>
1 Friday   FDE               5  
2 Thursday FDE               4.5

无额外依赖的替代方案

如果不想安装加载stringr包,可改用base R自带的大小写转换函数,将上述代码中的mutate行替换为任意一种即可实现相同的合并统计效果:

  • 全部转为大写:mutate(Week = toupper(Week))
  • 全部转为小写:mutate(Week = tolower(Week))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 03:06:03