Dplyr: hoe factorniveaus te veranderen met mute()


U kunt de volgende basissyntaxis in dplyr gebruiken om de niveaus van een factorvariabele te wijzigen met behulp van de functie mute() :

 library (dplyr)

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

Deze specifieke syntaxis brengt de volgende wijzigingen aan in de teamvariabele in het dataframe:

  • ‚H‘ wordt ‚Hawks‘
  • ‚M‘ wordt ‚Mavs‘
  • ‚C‘ wordt ‚Cavs‘

Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.

Voorbeeld: factorniveaus wijzigen met mute()

Stel dat we het volgende dataframe in R hebben dat informatie bevat over verschillende basketbalspelers:

 #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

We kunnen de volgende syntaxis gebruiken met de functie mute() van het dplyr- pakket om de niveaus van de teamvariabele te wijzigen:

 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

Met behulp van deze syntaxis konden we de volgende wijzigingen aanbrengen in de teamvariabele in het dataframe:

  • ‚H‘ wordt ‚Hawks‘
  • ‚M‘ wordt ‚Mavs‘
  • ‚C‘ wordt ‚Cavs‘

We kunnen verifiëren dat de factorniveaus zijn gewijzigd met behulp van de functie niveaus () :

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

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

Houd er ook rekening mee dat u ervoor kunt kiezen om slechts één factorniveau te wijzigen in plaats van allemaal.

We kunnen bijvoorbeeld de volgende syntaxis gebruiken om alleen „H“ te vervangen door „Hawks“ en de andere factorniveaus ongewijzigd te laten:

 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

Merk op dat „H“ werd vervangen door „Hawks“, maar dat de andere twee factorniveaus ongewijzigd bleven.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in dplyr uitvoert:

Rijen verwijderen met dplyr
Kolommen selecteren op index met behulp van dplyr
Hoe u rijen kunt filteren die een bepaalde tekenreeks bevatten met behulp van dplyr

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert