更改高于X的一列中的值,但不更改其他列

时间:2015-05-26 09:18:06

标签: r if-statement

如何更改30中30以上的列中的所有值,但如果有更低的值保留它的值?

Day Temperature
1            25
2            32
3            28
4            35

我想要

Day Temperature
1            25
2            30
3            28
4            30

我尝试过使用ifelse,但它也会更改其他值。

提前致谢

1 个答案:

答案 0 :(得分:2)

您可以尝试使用ifelse

 df1$Temperature <- with(df1, ifelse(Temperature>30, 30, Temperature))

或者在这种情况下,您不需要ifelse

 df1$Temperature[df1$Temperature>30] <- 30

如果我们使用data.table

library(data.table)
setDT(df1)[Temperature>30, Temperature:=30]