Мы можем создать логический вектор, сравнив фрейм данных с 3, а затем взять сумму столбцов, используя colSums
, и выбрать только те столбцы, у которых хотя бы одно значение больше 3.
mtcars[colSums(mtcars > 3) > 0]
# mpg cyl disp hp drat wt qsec gear carb
#Mazda RX4 21.0 6 160.0 110 3.90 2.620 16.46 4 4
#Mazda RX4 Wag 21.0 6 160.0 110 3.90 2.875 17.02 4 4
#Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 4 1
#Hornet 4 Drive 21.4 6 258.0 110 3.08 3.215 19.44 3 1
#....
Изменение с использованием sapply
mtcars[sapply(mtcars, function(x) any(x > 3))]