Как фильтровать по номеру строки с помощью dplyr


Вы можете использовать следующие методы для фильтрации фрейма данных по номеру строки с помощью функции slice из пакета dplyr :

Метод 1: фильтрация по определенным номерам строк

df %>% slice(2, 3, 8)

Это вернет номера строк 2, 3 и 8.

Способ 2: фильтрация по диапазону номеров строк

df %>% slice(2:5)

Это вернет строки со 2 по 5.

В следующих примерах показано, как использовать каждый метод на практике со следующим фреймом данных в R:

#create data frame
df <- data.frame(team=c('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'),
 points=c(10, 10, 8, 6, 15, 15, 12, 12),
 rebounds=c(8, 8, 4, 3, 10, 11, 7, 7))

#view data frame
df

 team points rebounds
1 A 10 8
2 B 10 8
3 C 8 4
4 D 6 3
5 E 15 10
6 F 15 11
7 G 12 7
8 H 12 7

Пример 1. Фильтрация по определенным номерам строк

Мы можем использовать следующий код для фильтрации строк 2, 3 и 8:

library(dplyr)

#filter for only rows 2, 3, and 8
df %>% slice(2, 3, 8)

 team points rebounds
1 B 10 8
2 C 8 4
3 H 12 7

Обратите внимание, что из исходного фрейма данных возвращаются только строки 2 , 3 и 8 .

Пример 2. Фильтрация по диапазону номеров строк

Мы можем использовать следующий код для фильтрации строк между 2 и 5:

library(dplyr)

#filter for rows between 2 and 5
df %>% slice(2:5)

 team points rebounds
1 B 10 8
2 C 8 4
3 D 6 3
4 E 15 10

Обратите внимание, что из исходного фрейма данных возвращаются только строки между 2 и 5 .

Примечание : Вы можете найти полную документацию по функции slice в dplyr здесь .

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции в dplyr:

Как выбрать столбцы по индексу с помощью dplyr
Как выбрать первую строку по группе с помощью dplyr
Как фильтровать по нескольким условиям с помощью dplyr
Как отфильтровать строки, содержащие определенную строку, с помощью dplyr