आर में भारित मानक विचलन की गणना कैसे करें


भारित मानक विचलन डेटासेट में मूल्यों के फैलाव को मापने का एक उपयोगी तरीका है जब डेटासेट में कुछ मूल्यों का वजन दूसरों की तुलना में अधिक होता है।

भारित मानक विचलन की गणना करने का सूत्र है:

सोना:

  • एन: अवलोकनों की कुल संख्या
  • एम: गैर-शून्य भार की संख्या
  • w i : एक भार सदिश
  • x i : डेटा मानों का एक वेक्टर
  • x : भारित औसत

R में भारित मानक विचलन की गणना करने का सबसे आसान तरीका Hmisc पैकेज से wt.var() फ़ंक्शन का उपयोग करना है, जो निम्नलिखित सिंटैक्स का उपयोग करता है:

 #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: एक वेक्टर के लिए भारित मानक विचलन

निम्नलिखित कोड दिखाता है कि आर में एकल वेक्टर के लिए भारित मानक विचलन की गणना कैसे करें:

 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: डेटा फ़्रेम में एक कॉलम के लिए भारित मानक विचलन

निम्नलिखित कोड दिखाता है कि आर में डेटा फ्रेम के कॉलम के लिए भारित मानक विचलन की गणना कैसे करें:

 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: डेटा फ़्रेम में एकाधिक स्तंभों के लिए भारित मानक विचलन

निम्नलिखित कोड दिखाता है कि डेटा फ्रेम में एकाधिक कॉलम के लिए भारित मानक विचलन की गणना करने के लिए आर में सैप्लाई() फ़ंक्शन का उपयोग कैसे करें:

 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 की भिन्नता के गुणांक की गणना कैसे करें
आर में रेंज की गणना कैसे करें

एक टिप्पणी जोड़ने

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *