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

R dataframe中基于position列条件新增分类列的实现方法

R dataframe按位置规则新增列解决方案

方法1:基础R实现

直接使用ifelse函数批量判断赋值,代码简洁高效:

# 构造示例数据(实际使用时替换为你自己的dataframe即可)
df <- data.frame(
  data = c(5,6,9,5),
  position = c("goalie", "forward", "defence", "forward")
)

# 按规则新增列
df$new.column <- ifelse(df$position == "forward", "good", "bad")

方法2:dplyr包实现(适合tidyverse生态用户)

如果习惯使用管道操作,也可以用mutate搭配case_when实现,后续调整规则更灵活:

library(dplyr)

df <- df %>%
  mutate(new.column = case_when(
    position == "forward" ~ "good",
    position %in% c("goalie", "defence") ~ "bad"
  ))

输出结果验证

运行上述任意方法后,得到的dataframe效果如下:

datapositionnew.column
5goaliebad
6forwardgood
9defencebad
5forwardgood

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 01:24:03