Hoe het gemiddelde van meerdere kolommen in r te berekenen
Vaak wil je misschien het gemiddelde van meerdere kolommen in R berekenen. Gelukkig kun je dit eenvoudig doen met de functie colMeans() .
colMeans(df)
De volgende voorbeelden laten zien hoe u deze functie in de praktijk kunt gebruiken.
ColMeans() gebruiken om het gemiddelde van meerdere kolommen te vinden
De volgende code laat zien hoe u de functie colMeans() gebruikt om het gemiddelde van elke kolom in een gegevensframe te vinden:
#create data frame df <- data.frame(var1=c(1, 3, 3, 4, 5), var2=c(7, 7, 8, 3, 2), var3=c(3, 3, 6, 6, 8), var4=c(1, 1, 2, 8, 9)) #find mean of each column colMeans(df) var1 var2 var3 var4 3.2 5.4 5.2 4.2
We kunnen ook opgeven voor welke kolommen het gemiddelde moet worden gevonden:
#find the mean of columns 2 and 3 colMeans(df[, c(2, 3)]) var2 var3 5.4 5.2 #find the mean of the first three columns colMeans(df[, 1:3]) var1 var2 var3 3.2 5.4 5.2
Als er kolommen zijn die niet numeriek zijn, kunt u sapply() gebruiken om aan te geven dat u alleen het gemiddelde van de numerieke kolommen wilt vinden:
#create data frame df <- data.frame(var1=c(1, 3, 3, 4, 5), var2=c(7, 7, 8, 3, 2), var3=c(3, 3, 6, 6, 8), var4=c(1, 1, 2, 8, 9), var5=c('a', 'a', 'b', 'b', 'c')) #find mean of only numeric columns colMeans(df[ sapply (df, is.numeric)]) var1 var2 var3 var4 3.2 5.4 5.2 4.2
En als er ontbrekende waarden in kolommen voorkomen, kunt u het argument na.rm=TRUE gebruiken om de ontbrekende waarden te negeren bij het berekenen van gemiddelden:
#create data frame with some missing values df <- data.frame(var1=c(1, 3, NA, NA, 5), var2=c(7, 7, 8, 3, 2), var3=c(3, 3, 6, 6, 8), var4=c(1, 1, 2, 8, NA)) #find mean of each column and ignore missing values colMeans(df, na.rm= TRUE ) var1 var2 var3 var4 3.0 5.4 5.2 3.0
Aanvullende bronnen
Hoe kolomnamen te herhalen in R
Hoe specifieke kolommen in R op te tellen