Как выбрать отдельные строки во фрейме данных в r


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

Способ 1: выберите отдельные строки во всех столбцах

 library (dplyr)

df %>% distinct()

Способ 2: выбор отдельных строк на основе столбца

 library (dplyr)

df %>% distinct(column1, . keep_all = TRUE )

Способ 3: выберите отдельные строки на основе нескольких столбцов

 library (dplyr)

df %>% distinct(column1, column2, . keep_all = TRUE )

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

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 position=c('G', 'G', 'F', 'F', 'G', 'G', 'F', 'F'),
                 points=c(10, 10, 8, 14, 15, 15, 17, 17))

#view data frame
df

  team position points
1 AG 10
2 AG 10
3AF 8
4 AF 14
5 BG 15
6 BG 15
7 BF 17
8 BF 17

Пример 1. Выбор уникальных строк во всех столбцах

Следующий код показывает, как выбрать строки с уникальными значениями во всех столбцах фрейма данных:

 library (dplyr)

#select rows with unique values across all columns
df %>% distinct()

  team position points
1 AG 10
2AF 8
3 AF 14
4 BG 15
5 BF 17

Мы видим, что во фрейме данных есть пять уникальных строк.

Примечание . При обнаружении повторяющихся строк сохраняется только первая уникальная строка.

Пример 2. Выбор отдельных строк на основе столбца

Следующий код показывает, как выбрать отдельные строки только на основе столбца группы .

 library (dplyr)

#select rows with unique values based on team column only
df %>% distinct(team, . keep_all = TRUE )

  team position points
1 AG 10
2 BG 15

Поскольку в столбце «Команда» только два уникальных значения, сохраняются только строки с первым появлением каждого значения.

Примечание . Аргумент .keep_all=TRUE указывает R сохранять все остальные столбцы в выходных данных.

Пример 3. Выбор отдельных строк на основе нескольких столбцов

Следующий код показывает, как выбрать отдельные строки только на основе столбцов команды и позиции .

 library (dplyr)

#select rows with unique values based on team and position columns only
df %>% distinct(team, position, . keep_all = TRUE )

  team position points
1 AG 10
2AF 8
3 BG 15
4 BF 17

Возвращаются четыре строки, поскольку в столбцах «Команда » и «Позиция» имеются четыре уникальные комбинации значений.

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

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

Как фильтровать уникальные значения с помощью dplyr
Как фильтровать по нескольким условиям с помощью dplyr
Как подсчитать количество вхождений в столбцах в R

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *