Як вибрати рядки фрейму даних за назвою за допомогою dplyr
Ви можете використовувати наступний синтаксис, щоб вибрати рядки у фреймі даних за назвою за допомогою dplyr:
library (dplyr) #select rows by name df %>% filter(row. names (df) %in% c(' name1 ', ' name2 ', ' name3 '))
У наступному прикладі показано, як використовувати цей синтаксис на практиці.
Приклад: виберіть рядки за назвою за допомогою dplyr
Припустимо, що ми маємо наступний кадр даних у R:
#create data frame
df <- data. frame (points=c(99, 90, 86, 88, 95),
assists=c(33, 28, 31, 39, 34),
rebounds=c(30, 28, 24, 24, 28))
#set row names
row. names (df) <- c('Mavs', 'Hawks', 'Cavs', 'Lakers', 'Heat')
#view data frame
df
points assists rebounds
Mavs 99 33 30
Hawks 90 28 28
Cavs 86 31 24
Lakers 88 39 24
Heat 95 34 28
Ми можемо використовувати наступний код, щоб вибрати рядки, ім’я рядка яких дорівнює Hawks, Cavs або Heat:
library (dplyr)
#select specific rows by name
df %>%
filter(row. names (df) %in% c(' Hawks ', ' Cavs ', ' Heat '))
points assists rebounds
Hawks 90 28 28
Cavs 86 31 24
Heat 95 34 28
Зауважте, що dplyr повертає лише рядки, імена яких є у векторі, який ми надали функції filter() .
Також зауважте, що ви можете використовувати знак оклику ( ! ), щоб виділити всі рядки, імена яких не входять до вектора:
library (dplyr)
#select rows that do not have Hawks, Cavs, or Heat in the row name
df %>%
filter(!(row. names (df) %in% c(' Hawks ', ' Cavs ', ' Heat ')))
points assists rebounds
Mavs 99 33 30
Lakers 88 39 24
Зауважте, що dplyr повертає лише рядки, імена яких не входять до вектора, який ми надали функції filter() .
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання в R:
Як фільтрувати унікальні значення за допомогою dplyr
Як фільтрувати за кількома умовами за допомогою dplyr
Як підрахувати кількість входжень у стовпці в R