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

सोना:
- एन: अवलोकनों की कुल संख्या
- एम: गैर-शून्य भार की संख्या
- 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 की भिन्नता के गुणांक की गणना कैसे करें
आर में रेंज की गणना कैसे करें