كيفية حساب الانحراف المعياري المرجح في r


يعد الانحراف المعياري الموزون طريقة مفيدة لقياس تشتت القيم في مجموعة البيانات عندما يكون لبعض القيم في مجموعة البيانات أوزان أعلى من غيرها.

صيغة حساب الانحراف المعياري المرجح هي:

ذهب:

  • N: العدد الإجمالي للملاحظات
  • م: عدد الأوزان غير الصفرية
  • w i : ناقل الوزن
  • xi : متجه لقيم البيانات
  • س : المتوسط المرجح

أسهل طريقة لحساب الانحراف المعياري المرجح في R هي استخدام الدالة wt.var() من حزمة Hmisc ، والتي تستخدم بناء الجملة التالي:

 #define data values
x <- c(4, 7, 12, 13, ...)

#define weights
wt <- c(.5, 1, 2, 2, ...)

#calculate weighted variance
weighted_var <- wtd. var (x, wt)

#calculate weighted standard deviation
weighted_sd <- sqrt(weighted_var)

توضح الأمثلة التالية كيفية استخدام هذه الوظيفة عمليًا.

مثال 1: الانحراف المعياري المرجح للمتجه

يوضح الكود التالي كيفية حساب الانحراف المعياري المرجح لمتجه واحد في R:

 library (Hmisc)

#define data values 
x <- c(14, 19, 22, 25, 29, 31, 31, 38, 40, 41)

#define weights
wt <- c(1, 1, 1.5, 2, 2, 1.5, 1, 2, 3, 2)

#calculate weighted variance 
weighted_var <- wtd. var (x, wt)

#calculate weighted standard deviation
sqrt(weighted_var)

[1] 8.570051

وتبين أن الانحراف المعياري المرجح هو 8.57 .

مثال 2: الانحراف المعياري المرجح لعمود في إطار البيانات

يوضح التعليمة البرمجية التالية كيفية حساب الانحراف المعياري المرجح لعمود إطار البيانات في R:

 library (Hmisc)

#define data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'A', 'B', 'B', 'C'),
                 wins=c(2, 9, 11, 12, 15, 17, 18, 19),
                 dots=c(1, 2, 2, 2, 3, 3, 3, 3))

#define weights
wt <- c(1, 1, 1.5, 2, 2, 1.5, 1, 2)

#calculate weighted standard deviation of points
sqrt(wtd. var (df$points, wt))

[1] 0.6727938

تبين أن الانحراف المعياري المرجح لعمود النقاط هو 0.673 .

مثال 3: الانحراف المعياري المرجح لأعمدة متعددة في إطار بيانات

يوضح التعليمة البرمجية التالية كيفية استخدام الدالة sapply() في R لحساب الانحراف المعياري المرجح لأعمدة متعددة في إطار البيانات:

 library (Hmisc)

#define data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'A', 'B', 'B', 'C'),
                 wins=c(2, 9, 11, 12, 15, 17, 18, 19),
                 dots=c(1, 2, 2, 2, 3, 3, 3, 3))

#define weights
wt <- c(1, 1, 1.5, 2, 2, 1.5, 1, 2)

#calculate weighted standard deviation of points and wins
sapply(df[c(' wins ', ' points ')], function(x) sqrt(wtd. var (x, wt)))

     win points 
4.9535723 0.6727938 

الانحراف المعياري المرجح لعمود الانتصارات هو 4.954 والانحراف المعياري المرجح لعمود النقاط هو 0.673 .

مصادر إضافية

كيفية حساب الانحراف المعياري المرجح في إكسيل
كيفية حساب الانحراف المعياري في R
كيفية حساب معامل الاختلاف لـ R
كيفية حساب النطاق في R

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *