假设我有以下数据框:
df <- data.frame(a=c(1,2,3,3,1), b=(c(1,9,1,2,3)),
c=c(1,2,3,3,9), d=(c(1,2,3,9,1)))
我想对 a + b + c + d 的值求和,但每次这些变量中的任何一个值为 9 时,我想求和 3 而不是 9。
我知道我可以通过使用以下语法重新编码每个变量来做到这一点:
df[,1:4][df[,1:4]==9]<-3
但我想用一个临时表或一些允许我跳过这一步的代码来做。最重要的是,我不想错过每个变量的原始值,因为 9 将对我需要做的其他操作有意义。
这将是我想要的结果:
df$sum <- c(4,9,10,11,8)
非常感谢,
亚特罗辛