1

我想更改与条件匹配的 data.frame 中的值,但我想指定条件仅适用于某些列。我知道:

  • df = Dataframe: df[df < 0] = 0。这适用于所有列中的所有元素,因此,这不能解决我的问题
  • 作为 df = Dataframe 和 Col:一个数据框的列:df$Col[df$Col < 0] = 0。这适用于 1 列中的所有元素,因此,这也不能解决我的问题。

中间的哪个解决方案允许我过滤我定义的那些指定列的所有元素?

4

2 回答 2

2

假设特定列可用作索引:

cols <- 1:750
df[,cols][df[,cols] < 0] = 0

如果您需要排除某些列,请使用负索引,例如:

cols <- c(-3,-4)
于 2013-04-04T08:10:37.110 回答
0

要排除某些列,您甚至可以使用负索引

列 <- -c(3,4)

于 2015-10-02T18:09:19.663 回答