Hoe u een totaalrij toevoegt aan een dataframe in r


U kunt de volgende methoden gebruiken om een „totaal“-rij toe te voegen aan de onderkant van een dataframe in R:

Methode 1: Gebruik Base R

 rbind(df, data. frame (team=' Total ', t(colSums(df[, -1]))))

Methode 2: gebruik dplyr

 library (dplyr)

df %>%
  bind_rows(summarize(., across(where(is.numeric), sum),
                         across(where(is.character), ~' Total ')))

Het volgende voorbeeld laat zien hoe u elke methode in de praktijk kunt gebruiken met het volgende dataframe:

 #create data frame
df <- data. frame (team=c('A', 'B', 'C', 'D', 'E', 'F'),
                 assists=c(5, 7, 7, 9, 12, 9),
                 rebounds=c(11, 8, 10, 6, 6, 5),
                 blocks=c(6, 6, 3, 2, 7, 9))

#view data frame
df

  team assists rebound blocks
1 to 5 11 6
2 B 7 8 6
3 C 7 10 3
4 D 9 6 2
5 E 12 6 7
6 F 9 5 9

Voorbeeld 1: Voeg een totaalrij toe met grondtal R

We kunnen de functies rbind en colSums van R base gebruiken om een totaalrij toe te voegen aan de onderkant van het dataframe:

 #add total row to data frame
df_new <- rbind(df, data. frame (team=' Total ', t(colSums(df[, -1]))))

#view new data frame
df_new

   team assists rebound blocks
1 to 5 11 6
2 B 7 8 6
3 C 7 10 3
4 D 9 6 2
5 E 12 6 7
6 F 9 5 9
7 Total 49 46 33

Merk op dat er onderaan het dataframe een rij is toegevoegd die de som van de waarden in elke kolom weergeeft.

Voorbeeld 2: Voeg een totaalrij toe met dplyr

De volgende code laat zien hoe u de dplyr- pakketfuncties in R gebruikt om een totaalrij toe te voegen aan de onderkant van het dataframe:

 library (dplyr)

#add total row to data frame
df_new <- df %>%
            bind_rows(summarize(., across(where(is.numeric), sum),
                                   across(where(is.character), ~' Total ')))

#view new data frame
df_new

   team assists rebound blocks
1 to 5 11 6
2 B 7 8 6
3 C 7 10 3
4 D 9 6 2
5 E 12 6 7
6 F 9 5 9
7 Total 49 46 33

Merk op dat er onderaan het dataframe een rij is toegevoegd die de som van de waarden in elke kolom weergeeft.

Merk ook op dat deze methode dezelfde resultaten oplevert als de basis R-methode.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in R kunt uitvoeren:

Hoe rbind te gebruiken in R
Hoe lijnen in R te verwijderen
Hoe het verschil tussen rijen in R te berekenen

Einen Kommentar hinzufügen

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