如何在R语言中创建带条件的减法公式计算变量距离?
在R中计算两变量的非负距离
你需要的其实就是两个变量差值的绝对值,用R自带的abs()函数就能直接实现,比手动写条件判断简洁得多:
library(dplyr) coilp5 <- mutate(coilp5, dist. = abs(X - Y))
abs()函数会自动把任何负值转为对应的正值,不管X和Y谁大谁小,最终得到的dist.都是两变量间的非负距离,完全满足你的需求。
如果想手动实现你描述的条件逻辑,也可以用ifelse()函数:
coilp5 <- mutate(coilp5, dist. = ifelse(X > Y, X - Y, Y - X))
不过abs(X-Y)的写法更高效易读,推荐优先使用。
内容的提问来源于stack exchange,提问作者EmStaLo
相关产品推荐
相关产品推荐

