我想我有这个:
dt <- data.table(mtcars)[1:3, ]
dt[wt == 2.620, "am"] <- 4
dt[wt == 2.620,]
我的输出是:
mpg cyl disp hp drat wt qsec vs am gear carb
1: 21 6 160 110 3.9 2.62 16.46 0 4 4 4
我想仅在4
和0
列中将值gear
替换为carb
。
最终数据如下所示:
mpg cyl disp hp drat wt qsec vs am gear carb
1: 21.0 6 160 110 3.90 2.620 16.46 0 4 0 0
2: 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
3: 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
答案 0 :(得分:3)
在你的小例子中,@ HenryRice提出的方法就足够了(可能还有一个子集wt == 2.62
)。
如果您是在更多行或列上执行此操作,则在此方案中使用data.table
的{{1}} / for
循环将非常有用
set
答案 1 :(得分:-1)
像这样:
dt$carb[dt$carb==4] <- 0
dt$gear[dt$gear==4] <- 0