आर में मजबूत मानक त्रुटियों की गणना कैसे करें
रैखिक प्रतिगमन की धारणाओं में से एक यह है कि मॉडल अवशेष भविष्यवक्ता चर के प्रत्येक स्तर पर समान रूप से बिखरे हुए हैं।
जब यह धारणा पूरी नहीं होती है, तो कहा जाता है कि विषमलैंगिकता एक प्रतिगमन मॉडल में मौजूद है।
जब ऐसा होता है, तो मॉडल के प्रतिगमन गुणांक की मानक त्रुटियां अविश्वसनीय हो जाती हैं।
इसे ध्यान में रखते हुए, हम मजबूत मानक त्रुटियों की गणना कर सकते हैं, जो विषमलैंगिकता के खिलाफ “मजबूत” हैं और हमें प्रतिगमन गुणांक के लिए सही मानक त्रुटि मूल्यों का बेहतर विचार दे सकते हैं।
निम्नलिखित उदाहरण दिखाता है कि आर में एक प्रतिगमन मॉडल के लिए मजबूत मानक त्रुटियों की गणना कैसे करें।
उदाहरण: आर में मजबूत मानक त्रुटियों की गणना
मान लीजिए कि हमारे पास आर में निम्नलिखित डेटा फ्रेम है जिसमें एक कक्षा में 20 छात्रों द्वारा अध्ययन किए गए घंटों और अर्जित परीक्षा अंकों के बारे में जानकारी शामिल है:
#create data frame df <- data. frame (hours=c(1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 5, 5, 5, 6, 6, 7, 7, 8), score=c(67, 68, 74, 70, 71, 75, 80, 70, 84, 72, 88, 75, 95, 75, 99, 78, 99, 65, 96, 70)) #view head of data frame head(df) hours score 1 1 67 2 1 68 3 1 74 4 1 70 5 2 71 6 2 75
हम आर में एक प्रतिगमन मॉडल को फिट करने के लिए एलएम() फ़ंक्शन का उपयोग कर सकते हैं जो भविष्यवक्ता चर के रूप में घंटों का उपयोग करता है और प्रतिक्रिया चर के रूप में स्कोर का उपयोग करता है :
#fit regression model fit <- lm(score ~ hours, data=df) #view summary of model summary(fit) Call: lm(formula = score ~ hours, data = df) Residuals: Min 1Q Median 3Q Max -19,775 -5,298 -3,521 7,520 18,116 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 71.158 4.708 15.11 1.14e-11 *** hours 1.945 1.075 1.81 0.087 . --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 10.48 on 18 degrees of freedom Multiple R-squared: 0.154, Adjusted R-squared: 0.107 F-statistic: 3.278 on 1 and 18 DF, p-value: 0.08696
यह जांचने का सबसे आसान तरीका है कि प्रतिगमन मॉडल में हेटेरोस्केडास्टिसिटी एक समस्या है या नहीं, एक अवशिष्ट प्लॉट बनाना है:
#create residual vs. fitted plot plot(fitted(fit), reside(fit)) #add a horizontal line at y=0 abline(0,0)
एक्स-अक्ष प्रतिक्रिया चर के फिट किए गए मान दिखाता है और वाई-अक्ष संबंधित अवशेषों को दिखाता है।
ग्राफ़ से हम देख सकते हैं कि जैसे-जैसे फिट किए गए मान बढ़ते हैं, अवशेषों का विचरण बढ़ता जाता है।
यह इंगित करता है कि प्रतिगमन मॉडल में विषमलैंगिकता संभवतः एक समस्या है और मॉडल सारांश की मानक त्रुटियां अविश्वसनीय हैं।
मजबूत मानक त्रुटियों की गणना करने के लिए, हम lmtest पैकेज से coeftest() फ़ंक्शन और सैंडविच पैकेज से vcovHC() फ़ंक्शन का उपयोग निम्नानुसार कर सकते हैं:
library (lmtest) library (sandwich) #calculate robust standard errors for model coefficients coeftest(fit, vcov = vcovHC(fit, type = ' HC0 ')) t test of coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 71.1576 3.3072 21.5160 2.719e-14 *** hours 1.9454 1.2072 1.6115 0.1245 --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
ध्यान दें कि घंटे पूर्वानुमानक चर के लिए मानक त्रुटि पिछले मॉडल सारांश में 1.075 से बढ़कर इस मॉडल सारांश में 1.2072 हो गई है।
चूँकि मूल प्रतिगमन मॉडल में विषमलैंगिकता मौजूद है, इसलिए यह मानक त्रुटि अनुमान अधिक विश्वसनीय है और इसका उपयोग घंटे पूर्वसूचक चर के लिए विश्वास अंतराल की गणना करते समय किया जाना चाहिए।
नोट : vcovHC() फ़ंक्शन में गणना करने के लिए सबसे सामान्य प्रकार का अनुमान ‘HC0’ है, लेकिन आप अन्य प्रकार के अनुमान खोजने के लिए दस्तावेज़ का संदर्भ ले सकते हैं।
अतिरिक्त संसाधन
निम्नलिखित ट्यूटोरियल बताते हैं कि आर में अन्य सामान्य कार्य कैसे करें:
आर में विषमलैंगिकता के लिए व्हाइट का परीक्षण कैसे करें
आर में रैखिक प्रतिगमन आउटपुट की व्याख्या कैसे करें
आर में अवशिष्ट प्लॉट कैसे बनाएं