我想用一个或多个其他列(df $ b,df $ c)上的数学运算的结果来更新数据帧列(df $ d),取决于另一列列(df $ a)。R条件替换数据帧值
set.seed(55)
df <- data.frame(a = rnorm(10), b = rnorm(10), c = rnorm(10), d = 0)
df$d[df$a > 0] <- df$b[df$a > 0]/df$c[df$a > 0]
第三行产生df $ d的期望值。有没有办法可以更简洁地写出这些?我特别感兴趣的是不需要我重复逻辑索引的选项。
例如,这种样式表达的作品在Python /大熊猫并且只需要一个“[DF $ A> 0]”上的赋值运算符的左侧实例:
df$d[df$a > 0] <- df$b/df$c
谢谢你为任何和所有的建议。