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