小编ish*_*han的帖子

根据data.table中特定列上的多个条件来标记行

我有一个data.table,其中包含特定年份的变量“ Performance”的多个列以及一个名为“ ExPerf”的列。我想创建一个名为FLAG的新列,该列将基于以下两个条件指示标记为需要手动检查的行:

  1. 任何“性能”列的值为负
  2. “ ExPerf”列与任何列的相差超过50%。

类似于我的模拟data.table:

library(data.table)
dt <- data.table(Id = c("N23", "N34", "N11", "N65", "N55", "N78", "N88"),
                 Name = c("ABCD", "ACBD", "ACCD", "ADBN", "ADDD", "DBCA", "CBDA"),
                 Type = c("T", "B", "B", "T", "T", "B", "B"),
                 Sold = c(500, 300, 350, 500, 350, 400, 450),
                 Bl = c(2000, 2100, 2000, 1500, 1890, 1900, 2000),
                 P_2016 = c(-200, 420, 800, 900, -10, 75, 400),
                 P_2017 = c(500, 300, -20, 700, 50, 80, 370),
                 P_2018 = c(1000, 400, 600, 800, 40, …
Run Code Online (Sandbox Code Playgroud)

r data.table

4
推荐指数
1
解决办法
159
查看次数

标签 统计

data.table ×1

r ×1