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

在R语言中为Data数据框添加符合条件的task列的实现咨询

在R语言中实现自定义规则生成task列

当然可以实现这个需求,下面提供两种常用的实现方式:

方法一:基础R的嵌套ifelse语句

直接利用基础R的ifelse()函数嵌套判断条件,一步生成目标列:

# 覆盖原task列(若需保留原列可将左侧改为Data$new_task)
Data$task <- ifelse(
  Data$order == "sc",
  ifelse(Data$time %% 2 == 1, "simple", "complex"),
  ifelse(Data$time %% 2 == 1, "complex", "simple")
)

# 查看结果
print(Data)

方法二:使用dplyr包的case_when(更易读)

如果习惯使用tidyverse系列工具,case_when()可以更清晰地写出多条件规则:

library(dplyr)

Data <- Data %>%
  mutate(task = case_when(
    order == "sc" & time %% 2 == 1 ~ "simple",
    order == "sc" & time %% 2 == 0 ~ "complex",
    order == "cs" & time %% 2 == 1 ~ "complex",
    order == "cs" & time %% 2 == 0 ~ "simple"
  ))

# 查看结果
print(Data)

两种方法运行后都会得到符合规则的结果:

id order time    task
1  1    sc    1  simple
2  1    sc    2 complex
3  2    cs    1 complex
4  2    cs    2  simple
5  3    sc    1  simple
6  3    sc    2 complex
7  4    cs    1 complex
8  4    cs    2  simple

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 19:35:24