Dplyr: jak zmienić poziomy współczynników za pomocą mutate()


Aby zmienić poziomy zmiennej czynnikowej za pomocą funkcji mutate(), możesz użyć następującej podstawowej składni w dplyr :

 library (dplyr)

df <- df %>% mutate(team=recode(team,
                                ' H ' = ' Hawks ',
                                ' M ' = ' Mavs ',
                                ' C ' = ' Cavs '))

Ta konkretna składnia wprowadza następujące zmiany w zmiennej zespołu w ramce danych:

  • „H” zmienia się w „Jastrzębie”
  • „M” zmienia się w „Mavs”
  • „C” zmienia się w „Cavs”

Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.

Przykład: Zmień poziomy współczynników za pomocą mutate()

Załóżmy, że mamy następującą ramkę danych w R, która zawiera informacje o różnych koszykarzach:

 #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

Możemy użyć następującej składni z funkcją mutate() pakietu dplyr , aby zmienić poziomy zmiennej team :

 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

Korzystając z tej składni, mogliśmy wprowadzić następujące zmiany w zmiennej team w ramce danych:

  • „H” zmienia się w „Jastrzębie”
  • „M” zmienia się w „Mavs”
  • „C” zmienia się w „Cavs”

Możemy sprawdzić, czy poziomy współczynników uległy zmianie, korzystając z funkcji poziomów () :

 #display factor levels of team variable
levels(df$team)

[1] “Cavs” “Hawks” “Mavs” 

Należy również pamiętać, że można zmienić tylko jeden poziom współczynnika zamiast wszystkich.

Na przykład możemy użyć następującej składni, aby zastąpić tylko „H” przez „Jastrzębie” i pozostawić pozostałe poziomy czynników bez zmian:

 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

Należy zauważyć, że „H” zostało zastąpione przez „Jastrzębie”, ale pozostałe dwa poziomy czynników pozostały niezmienione.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w dplyr:

Jak usunąć wiersze za pomocą dplyr
Jak wybrać kolumny według indeksu za pomocą dplyr
Jak filtrować wiersze zawierające określony ciąg za pomocą dplyr

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *