So berechnen sie den durchschnitt mehrerer spalten in r
Häufig möchten Sie möglicherweise den Durchschnitt mehrerer Spalten in R berechnen. Glücklicherweise können Sie dies problemlos mit der Funktion colMeans() tun.
colMeans(df)
Die folgenden Beispiele zeigen, wie Sie diese Funktion in der Praxis nutzen können.
Verwenden Sie colMeans(), um den Durchschnitt mehrerer Spalten zu ermitteln
Der folgende Code zeigt, wie Sie mit der Funktion colMeans() den Durchschnitt jeder Spalte in einem Datenrahmen ermitteln:
#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
Wir können auch angeben, für welche Spalten der Durchschnitt ermittelt werden soll:
#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
Wenn es Spalten gibt, die nicht numerisch sind, können Sie mit sapply() angeben, dass Sie nur den Durchschnitt der numerischen Spalten ermitteln möchten:
#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
Und wenn in einer Spalte Werte fehlen, können Sie das Argument na.rm=TRUE verwenden, um die fehlenden Werte bei der Durchschnittsberechnung zu ignorieren:
#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
Zusätzliche Ressourcen
So iterieren Sie über Spaltennamen in R
So summieren Sie bestimmte Spalten in R