фильтруйте строки на основе их суммы в dplyR R

#r #dplyr #tidyverse #tidy

Вопрос:

Я пытаюсь все исправить, используя пакет dplyr в R. Представьте, что у меня есть набор данных iris, который выглядит следующим образом

 library(tidyverse)
iris=iris[,1:4]
head(iris)

  Sepal.Length Sepal.Width Petal.Length Petal.Width
1          5.1         3.5          1.4         0.2
2          4.9         3.0          1.4         0.2
3          4.7         3.2          1.3         0.2
4          4.6         3.1          1.5         0.2
 

Я хочу сохранить только строки, сумма которых больше или равна (>=) 10>. С Бейзером я могу сделать это
вот так

 iris[rowSums(iris) >= 10, , drop = FALSE]

 

Как я мог бы сделать это, используя dplyR и rowSums function

Ответ №1:

Вы можете использовать —

 library(dplyr)

iris1=iris[,1:4]
iris1 %>% filter(rowSums(.) >= 10)