Jak obliczyć skumulowaną średnią w r


Skumulowana średnia informuje nas o średniej szeregu wartości do pewnego punktu.

Aby obliczyć skumulowaną średnią wartości w R, możesz użyć następujących metod:

Metoda 1: Użyj podstawy R

 cum_avg <- cumsum(x) / seq_along(x)

Metoda 2: użyj dplyr

 library (dplyr)

cum_avg <- cummean(x)

Obie metody zwracają dokładnie ten sam wynik, ale metoda dplyr ma tendencję do szybszego działania w przypadku dużych ramek danych.

Poniższe przykłady pokazują, jak w praktyce wykorzystać każdą metodę z następującą ramką danych w R:

 #create data frame
df <- data. frame (day=seq(1:16),
                 sales=c(3, 6, 0, 2, 4, 1, 0, 1, 4, 7, 3, 3, 8, 3, 5, 5))

#view head of data frame
head(df)

  day sales
1 1 3
2 2 6
3 3 0
4 4 2
5 5 4
6 6 1

Przykład 1: Oblicz skumulowaną średnią, korzystając z podstawy R

Możemy użyć poniższego kodu, aby dodać nową kolumnę do naszej ramki danych, która wyświetla skumulowaną średnią sprzedaży:

 #add new column that contains cumulative avg. of sales
df$cum_avg_sales <- cumsum(df$sales) / seq_along(df$sales) 

#view updated data frame
df

   day sales cum_avg_sales
1 1 3 3.000000
2 2 6 4.500000
3 3 0 3.000000
4 4 2 2.750000
5 5 4 3.000000
6 6 1 2.666667
7 7 0 2.285714
8 8 1 2.125000
9 9 4 2.333333
10 10 7 2.800000
11 11 3 2.818182
12 12 3 2.833333
13 13 8 3.230769
14 14 3 3.214286
15 15 5 3.333333
16 16 5 3.437500

Zinterpretowalibyśmy skumulowane wartości średnie jako:

  • Skumulowana średnia wartości pierwszej sprzedaży wynosi 3 .
  • Skumulowana średnia z dwóch pierwszych wartości sprzedaży wynosi 4,5 .
  • Skumulowana średnia z pierwszych trzech wartości sprzedaży wynosi 3 .
  • Skumulowana średnia z pierwszych czterech wartości sprzedaży wynosi 2,75 .

I tak dalej.

Przykład 2: Oblicz skumulowaną średnią za pomocą dplyr

Możemy również użyć funkcji cummean z pakietu dplyr w R, aby obliczyć średnią skumulowaną.

Poniższy kod pokazuje, jak użyć tej funkcji, aby dodać nową kolumnę do naszej ramki danych, która wyświetla skumulowaną średnią sprzedaż:

 library (dplyr)

#add new column that contains cumulative avg. of sales
df$cum_avg_sales <- cummean(df$sales) 

#view updated data frame
df

   day sales cum_avg_sales
1 1 3 3.000000
2 2 6 4.500000
3 3 0 3.000000
4 4 2 2.750000
5 5 4 3.000000
6 6 1 2.666667
7 7 0 2.285714
8 8 1 2.125000
9 9 4 2.333333
10 10 7 2.800000
11 11 3 2.818182
12 12 3 2.833333
13 13 8 3.230769
14 14 3 3.214286
15 15 5 3.333333
16 16 5 3.437500

Należy pamiętać, że ta metoda zwraca dokładnie takie same wyniki, jak poprzednia metoda.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak obliczać inne popularne metryki w R:

Jak obliczyć średnią obciętą w R
Jak obliczyć średnią geometryczną w R
Jak obliczyć średnią ważoną w R

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *