Select 列包含高于阈值的值

Select columns containing a value above a threshold

我有以下数据集

df<-data.frame(c(1,2,1),c(2,1,3), c(1,3,4))

假设我想要 select 值等于或大于 3 的列(即第 2 列和第 3 列)

我设法使用 df >= 3 找到了逻辑参数并使用 which(df>=3) 建立了索引,但我在 select 列中遇到困难。

Filter 似乎是一个不错的选择:

df <- data.frame(x = c(1,2,1), y = c(2,1,3), z = c(1,3,4))

Filter(
  function(x) max(x) >= 3,
  df
  )