Jak uśredniać kolumny w r (z przykładami)
Często możesz chcieć uśrednić wartości z wielu kolumn w R. Na szczęście można to łatwo zrobić za pomocą funkcji rowMeans() .
W tym samouczku przedstawiono kilka przykładów praktycznego wykorzystania tej funkcji.
Przykład 1: Znajdź średnią we wszystkich kolumnach
Poniższy kod pokazuje, jak obliczyć średnią wartość każdego wiersza we wszystkich kolumnach ramki danych:
#create data frame data <- data.frame(var1 = c(0, NA, 2, 2, 5), var2 = c(5, 5, 7, 8, 9), var3 = c(2, 7, 9, 9, 7)) #view data frame data var1 var2 var3 1 0 5 2 2 NA 5 7 3 2 7 9 4 2 8 9 5 5 9 7 #find average value in each row rowMeans(data, na.rm= TRUE ) [1] 2.333333 6.000000 6.000000 6.333333 7.000000
Sposób interpretacji wyniku jest następujący:
- Średnia wartość w pierwszym rzędzie to 2,333 .
- Średnia wartość w drugim rzędzie wynosi 6 .
- Średnia wartość w trzecim rzędzie wynosi 6 .
- Średnia wartość w czwartym rzędzie to 6,333 .
- Średnia wartość w piątym rzędzie wynosi 7 .
Możesz także przypisać te średnie wierszy do nowej zmiennej w ramce danych:
#assign row averages to new variable named row_mean data$row_mean <- rowMeans(data, na.rm= TRUE ) #view data frame data var1 var2 var3 row_mean 1 0 5 2 2.333333 2 NA 5 7 6.000000 3 2 7 9 6.000000 4 2 8 9 6.333333 5 5 9 7 7.000000
Przykład 2: Znajdź średnią w określonych kolumnach
Możliwe jest również znalezienie średniej tylko w określonych kolumnach ramki danych. Na przykład poniższy kod pokazuje, jak obliczyć średnie wierszy tylko dla pierwszych dwóch kolumn:
#find row averages across first two columns data$new <- rowMeans(data[, c(1,2)], na.rm= TRUE ) #view data frame data var1 var2 var3 new 1 0 5 2 2.5 2 NA 5 7 5.0 3 2 7 9 4.5 4 2 8 9 5.0 5 5 9 7 7.0
Możemy to zobaczyć:
- Średnia wartość pierwszego wiersza pierwszych dwóch kolumn wynosi 2,5 .
- Średnia wartość drugiego wiersza pierwszych dwóch kolumn wynosi 5 .
I tak dalej.
Możesz użyć podobnej składni, aby znaleźć średnie wierszy dla dowolnego zestawu kolumn. Na przykład poniższy kod pokazuje, jak obliczyć średnie wierszy tylko dla pierwszej i trzeciej kolumny:
#find row averages across first and third columns data$new <- rowMeans(data[, c(1,3)], na.rm= TRUE ) #view data frame data var1 var2 var3 new 1 0 5 2 1.0 2 NA 5 7 7.0 3 2 7 9 5.5 4 2 8 9 5.5 5 5 9 7 6.0
Możemy to zobaczyć:
- Średnia wartość pierwszego wiersza pierwszej i trzeciej kolumny wynosi 1 .
- Średnia wartość w drugim wierszu pierwszej i trzeciej kolumny wynosi 7 .
I tak dalej.
Więcej samouczków R znajdziesz tutaj .