R'de ağırlıklı ortalama nasıl hesaplanır


R’de ağırlıklı ortalamayı hesaplamak için aşağıdaki sözdizimini kullanan yerleşik ağırlıklı.mean() işlevini kullanabilirsiniz:

ağırlıklı.ortalama(x,w)

Altın:

  • x: ham veri değerlerinin bir vektörü
  • w: Bir ağırlık vektörü

Bu eğitimde bu işlevin pratik kullanımına ilişkin birkaç örnek gösterilmektedir.

Örnek 1: Bir vektörün ağırlıklı ortalaması

Aşağıdaki kod, belirli bir veri vektörü için ağırlıklı ortalamanın nasıl hesaplanacağını gösterir:

 #define vector of data values
data <- c(3, 5, 6, 7, 8)

#define vector of weights
weights <- c(.1, .3, .3, .2, .1)

#calculate weighted mean
weighted. mean (x=data, w=weights)

[1] 5.8

Ağırlıklı ortalama 5,8 çıkıyor.

Örnek 2: Bir veri çerçevesindeki bir sütunun ağırlıklı ortalaması

Aşağıdaki kod, ağırlık olarak başka bir sütun kullanılarak veri çerçevesindeki bir sütunun ağırlıklı ortalamasının nasıl hesaplanacağını gösterir:

 #create data frame
df <- data.frame(values = c(3, 5, 6, 7, 8),
                 weights = c(.1, .3, .3, .2, .1))

#calculate weighted mean
weighted. mean (x=df$values, w=df$weights)
[1] 5.8

Ağırlıklı ortalama 5,8 çıkıyor.

Ağırlık olarak farklı bir vektör kullanarak veri çerçevesindeki bir sütunun ağırlıklı ortalamasını da hesaplayabileceğinizi unutmayın:

 #create data frame
df <- data.frame(values = c(3, 5, 6, 7, 8),
                 other_data = c(6, 12, 14, 14, 7),
                 more_data = c(3, 3, 4, 7, 9))

#define vector of weights
weights <- c(.1, .3, .3, .2, .1)

#calculate weighted mean
weighted. mean (x=df$values, w=weights)
[1] 5.8

Burada da ağırlıklı ortalama 5,8 çıkıyor.

Ağırlıklı ortalama ne zaman kullanılır?

Uygulamada, belirli veri değerlerinin diğerlerinden daha önemli olduğunu düşündüğümüzde ve dolayısıyla bu daha büyük değerlerin nihai ortalamaya daha fazla katkıda bulunmasını istediğimizde ağırlıklı ortalama kullanılır.

Ek kaynaklar

R’de birden fazla sütunun ortalaması nasıl hesaplanır
R’de grup başına ortalama nasıl hesaplanır
R’de belirli sütunlar nasıl toplanır

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir