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

如何在R的data.table中依据列值条件创建新列?

使用data.table创建条件新列的方法

针对你的需求,有两种简洁的方式在data.table中实现条件赋值:

  • 方法一:利用逻辑表达式转整数
    因为在R里TRUE等价于1,FALSE等价于0,直接将条件判断的结果转为整数即可:
dt[, z := as.integer(x >= 1 & x <= 3)]
  • 方法二:使用ifelse()函数
    如果需要更直观的条件分支逻辑,可以用ifelse:
dt[, z := ifelse(x >= 1 & x <= 3, 1, 0)]

执行任意一段代码后,你的dt就会新增z列,结果与期望一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 06:40:20