有条件地替换下一行中的值

时间:2015-12-15 00:54:29

标签: r data-manipulation recode

如何编写一个条件函数来比较R中数据帧的行中的条目。例如,如果第1行中的条目大于第2行中的条目,则将第2行条目替换为" lower"

row1 row2
667  668    
673  674
665  679 
664  668 

如果应用该功能,第一列中的条目将更高,更低,更低。

2 个答案:

答案 0 :(得分:0)

您可以使用ifelse

dat$row2 <- ifelse(dat$row1 < dat$row2, "higher", "lower")

答案 1 :(得分:0)

我们可以做到

dat1 <- dat
dat1[] <- c('lower', 'higher')[t(apply(dat, 1, order))]