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

如何在R中对特定变量分组?使用dplyr将大洲字段重编码为生态区

实现方案

你可以使用dplyr包的mutate()结合case_when()函数完成自定义分组映射,完整代码如下:

# 加载dplyr包
library(dplyr)
# 构造示例数据
data <- data.frame(
  temp = c(1,2,3,4,5),
  region = c("Europe","Asia","N America", "S America","Australia")
)
# 新增分组字段region_2
data <- data %>%
  mutate(region_2 = case_when(
    region %in% c("Europe", "Asia", "Africa") ~ "Eurasia+Af",
    region %in% c("N America", "S America") ~ "Americas",
    region == "Australia" ~ "Australia"
  ))
# 查看结果
print(data)

逻辑说明

  • case_when会按顺序判断条件,匹配到第一个符合的条件就返回对应的值
  • 如果原数据的region取值还有其他异常值,可以在最后加一行TRUE ~ "其他"作为兜底规则,避免返回NA

运行结果和你期望的输出完全一致:

temp    region   region_2
1    1    Europe Eurasia+Af
2    2      Asia Eurasia+Af
3    3 N America   Americas
4    4 S America   Americas
5    5 Australia  Australia

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 15:24:01