Dplyr: как изменить уровни факторов с помощью mutate()
Вы можете использовать следующий базовый синтаксис в dplyr для изменения уровней факторной переменной с помощью функции mutate() :
library (dplyr) df <- df %>% mutate(team=recode(team, ' H ' = ' Hawks ', ' M ' = ' Mavs ', ' C ' = ' Cavs '))
Этот конкретный синтаксис вносит следующие изменения в переменную команды во фрейме данных:
- «H» становится «Ястребами»
- «М» становится «Мавс».
- «С» становится «Кавс»
В следующем примере показано, как использовать этот синтаксис на практике.
Пример: изменение уровней коэффициентов с помощью mutate()
Предположим, у нас есть следующий кадр данных в R, содержащий информацию о различных баскетболистах:
#create data frame df <- data. frame (team=factor(c('H', 'H', 'M', 'M', 'C', 'C')), dots=c(22, 35, 19, 15, 29, 23)) #view data frame df team points 1:22 a.m. 2:35 a.m. 3 M 19 4 M 15 5 C 29 6 C 23
Мы можем использовать следующий синтаксис с функцией mutate() пакета dplyr , чтобы изменить уровни переменной команды :
library (dplyr) #change factor levels of team variable df <- df %>% mutate(team=recode(team, ' H ' = ' Hawks ', ' M ' = ' Mavs ', ' C ' = ' Cavs ')) #view updated data frame df team points 1 Hawks 22 2 Hawks 35 3 Mavs 19 4 Mavs 15 5 Cavs 29 6 Cavs 23
Используя этот синтаксис, мы смогли внести следующие изменения в переменную команды во фрейме данных:
- «H» становится «Ястребами»
- «М» становится «Мавс».
- «С» становится «Кавс»
Мы можем убедиться, что уровни факторов были изменены с помощью функции Levels () :
#display factor levels of team variable
levels(df$team)
[1] “Cavs” “Hawks” “Mavs”
Также обратите внимание, что вы можете изменить только один уровень фактора вместо всех.
Например, мы можем использовать следующий синтаксис, чтобы заменить только «H» на «Hawks» и оставить другие уровни коэффициентов неизменными:
library (dplyr) #change one factor level of team variable df <- df %>% mutate(team=recode(team, ' H ' = ' Hawks ')) #view updated data frame df team points 1 Hawks 22 2 Hawks 35 3 M 19 4 M 15 5 C 29 6 C 23
Обратите внимание, что «H» было заменено на «Hawks», но два других уровня фактора остались неизменными.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в dplyr:
Как удалить строки с помощью dplyr
Как выбрать столбцы по индексу с помощью dplyr
Как фильтровать строки, содержащие определенную строку, с помощью dplyr