r - data.table 包中的 if else 语句

标签 r data.table

我有一个包含 6 列和 450 万行的数据集。如果第五列中有零值,我想写一个逻辑检查,将 1 放在第六列中。你能解释一下如何构建一个算法来做到这一点吗?在第五列中,我发现我的单元格的值为零。我想执行,如果在第五列中我有零值将 1 放在第六列中,如果不放 0?我必须使用 data.table 包。我试试这个 数据名称[,6] = ifelse(数据名称[,5] == 0, 1, 数据名称[,6])。

最佳答案

使用data.table,我们可以使用:=,这会更有效(来自@plafort 的帖子的示例数据)

library(data.table)#v1.9.4+
setDT(df)[X5==0, X6:=1] 

关于r - data.table 包中的 if else 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30944352/

相关文章:

r - Lua 替代 optim()

r - 命名嵌套列表

r - setDT() 有意想不到的副作用

r - R 中 data.tables 的 cut 函数的替代方案 - 因子的整数变量

python - 如何在 Python 中导入 r 包

R - 具有预定义总数的整数的随机近似正态分布

r - 如何获得R中系统发育树的节点顺序?

r - 是否可以使用 R 中的 data.table 的 SET 来分配多个列/值?

r data.table::dcast 交叉产品在大数据集上失败

r - 使用 R 将列名插入其值