在R中设置变量值的上限

时间:2016-04-28 04:31:58

标签: r

如何在R?

中的变量上设置上限?

假设我有一个带有列的数据框架" a"和" b"。值" b"范围从1:100。我想制作所有值> 50等于50。

我可以编写循环并完成此操作,但我需要一个函数。

1 个答案:

答案 0 :(得分:4)

将数据框简化为b > 50,并使用 50 更新b

## example data
df <- data.frame(a = seq(1:100),
                b = seq(1:100))

## subset rows where b > 50, and assign b <- 50
df$b[df$b > 50 ] <- 50      ## thanks thelatemail
## or
## df[df$b > 50, "b"] <- 50

@Frank强调的另一种方法是使用并行最小值函数,?pmin

df$b = pmin(df$b, 50)

pmin比较输入值并返回它们的最小值。