मैं आर में एक उदाहरण के रूप में कोड प्रदान कर रहा हूं, आप बस जवाब देख सकते हैं यदि आपके पास आर के साथ अनुभव नहीं है। मैं उदाहरण के साथ कुछ मामलों को बनाना चाहता हूं।
सहसंबंध बनाम प्रतिगमन
एक Y और एक X के साथ सरल रैखिक सहसंबंध और प्रतिगमन:
आदर्श:
y = a + betaX + error (residual)
मान लें कि हमारे पास केवल दो चर हैं:
X = c(4,5,8,6,12,15)
Y = c(3,6,9,8,6, 18)
plot(X,Y, pch = 19)
एक तितर बितर आरेख पर, अंक एक सीधी रेखा के करीब होते हैं, दो चर के बीच रैखिक संबंध को मजबूत करते हैं।
आइए देखें रेखीय सहसंबंध।
cor(X,Y)
0.7828747
अब रैखिक प्रतिगमन और पुल-आउट आर चुकता मान।
reg1 <- lm(Y~X)
summary(reg1)$r.squared
0.6128929
इस प्रकार मॉडल के गुणांक हैं:
reg1$coefficients
(Intercept) X
2.2535971 0.7877698
X के लिए बीटा 0.7877698 है। इस प्रकार बाहर मॉडल होगा:
Y = 2.2535971 + 0.7877698 * X
प्रतिगमन में R- वर्गीय मान का वर्गमूल r
रैखिक प्रतिगमन में समान है ।
sqrt(summary(reg1)$r.squared)
[1] 0.7828747
आइए एक ही उपरोक्त उदाहरण का उपयोग करके प्रतिगमन ढलान और सहसंबंध पर पैमाने पर प्रभाव देखें और X
एक स्थिर कहना के साथ गुणा करें 12
।
X = c(4,5,8,6,12,15)
Y = c(3,6,9,8,6, 18)
X12 <- X*12
cor(X12,Y)
[1] 0.7828747
सहसंबंध के रूप में करते हैं आर चुकता अपरिवर्तित ही रहेंगे ।
reg12 <- lm(Y~X12)
summary(reg12)$r.squared
[1] 0.6128929
reg12$coefficients
(Intercept) X12
0.53571429 0.07797619
आप देख सकते हैं कि प्रतिगमन गुणांक बदल गए हैं लेकिन आर-स्क्वायर नहीं। अब एक और प्रयोग एक निरंतरता को जोड़ने देता है X
और देखता है कि इसका क्या प्रभाव होगा।
X = c(4,5,8,6,12,15)
Y = c(3,6,9,8,6, 18)
X5 <- X+5
cor(X5,Y)
[1] 0.7828747
जोड़ने के बाद भी सहसंबंध नहीं बदला जाता है 5
। आइए देखें कि यह प्रतिगमन गुणांक पर कैसे प्रभाव डालेगा।
reg5 <- lm(Y~X5)
summary(reg5)$r.squared
[1] 0.6128929
reg5$coefficients
(Intercept) X5
-4.1428571 0.9357143
आर-वर्ग और सहसंबंध पैमाने प्रभाव नहीं है, लेकिन अवरोधन और ढलान है। तो ढलान सहसंबंध गुणांक के समान नहीं है (जब तक कि चर का मतलब 0 और विचरण 1 के साथ मानकीकृत न हो )।
एनोवा क्या है और हम एनोवा क्यों करते हैं?
एनोवा एक ऐसी तकनीक है जहां हम निर्णय लेने के लिए भिन्नताओं की तुलना करते हैं। प्रतिक्रिया चर (बुलाया Y
) मात्रात्मक चर, जबकि X
कर सकते हैं मात्रात्मक या गुणात्मक (विभिन्न स्तरों के साथ कारक)। दोनों X
औरY
संख्या में एक या अधिक हो सकता है। आमतौर पर हम कहते हैं कि गुणात्मक चर के लिए एनोवा, प्रतिगमन संदर्भ में एनोवा कम चर्चा है। हो सकता है कि यह आपके भ्रम का कारण हो। गुणात्मक चर में शून्य परिकल्पना (उदाहरण के लिए समूह।) यह है कि समूहों का मतलब अलग-अलग / समान नहीं है, जबकि प्रतिगमन विश्लेषण में हम परीक्षण करते हैं कि क्या लाइन का ढलान 0 से काफी अलग है।
आइए एक उदाहरण देखें जहां हम प्रतिगमन विश्लेषण और गुणात्मक कारक एनोवा दोनों कर सकते हैं क्योंकि एक्स और वाई दोनों मात्रात्मक हैं, लेकिन हम एक्स को कारक के रूप में मान सकते हैं।
X1 <- rep(1:5, each = 5)
Y1 <- c(12,14,18,12,14, 21,22,23,24,18, 25,23,20,25,26, 29,29,28,30,25, 29,30,32,28,27)
myd <- data.frame (X1,Y1)
डेटा इस प्रकार दिखता है।
X1 Y1
1 1 12
2 1 14
3 1 18
4 1 12
5 1 14
6 2 21
7 2 22
8 2 23
9 2 24
10 2 18
11 3 25
12 3 23
13 3 20
14 3 25
15 3 26
16 4 29
17 4 29
18 4 28
19 4 30
20 4 25
21 5 29
22 5 30
23 5 32
24 5 28
25 5 27
अब हम प्रतिगमन और एनोवा दोनों करते हैं। पहला प्रतिगमन:
reg <- lm(Y1~X1, data=myd)
anova(reg)
Analysis of Variance Table
Response: Y1
Df Sum Sq Mean Sq F value Pr(>F)
X1 1 684.50 684.50 101.4 6.703e-10 ***
Residuals 23 155.26 6.75
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
reg$coefficients
(Intercept) X1
12.26 3.70
अब X को कारक से परिवर्तित करके पारंपरिक एनोवा (कारक / गुणात्मक चर के लिए एनोवा)।
myd$X1f <- as.factor (myd$X1)
regf <- lm(Y1~X1f, data=myd)
anova(regf)
Analysis of Variance Table
Response: Y1
Df Sum Sq Mean Sq F value Pr(>F)
X1f 4 742.16 185.54 38.02 4.424e-09 ***
Residuals 20 97.60 4.88
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
आप बदले हुए X1f Df को देख सकते हैं जो उपरोक्त मामले में 1 के बजाय 4 है।
गुणात्मक चर के लिए ANOVA के विपरीत, मात्रात्मक चर के संदर्भ में जहां हम प्रतिगमन विश्लेषण करते हैं - विश्लेषण का विश्लेषण (ANOVA) में गणना होती है जो प्रतिगमन मॉडल के भीतर परिवर्तनशीलता के स्तर के बारे में जानकारी प्रदान करते हैं और महत्व के परीक्षणों के लिए एक आधार बनाते हैं।
मूल रूप से एनोवा परीक्षण शून्य परिकल्पना बीटा = 0 का परीक्षण करता है (वैकल्पिक परिकल्पना बीटा 0 के बराबर नहीं है)। यहां हम एफ परीक्षण करते हैं कि मॉडल बनाम त्रुटि (अवशिष्ट विचरण) द्वारा समझाया गया परिवर्तनशीलता का कौन सा अनुपात है। मॉडल का विचलन उस रेखा द्वारा बताई गई राशि से आता है जिसे आप फिट करते हैं जबकि अवशिष्ट उस मूल्य से आता है जिसे मॉडल द्वारा समझाया नहीं गया है। एक महत्वपूर्ण एफ का मतलब है कि बीटा मान शून्य के बराबर नहीं है, इसका मतलब है कि दो चर के बीच महत्वपूर्ण संबंध है।
> anova(reg1)
Analysis of Variance Table
Response: Y
Df Sum Sq Mean Sq F value Pr(>F)
X 1 81.719 81.719 6.3331 0.0656 .
Residuals 4 51.614 12.904
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
यहां हम उच्च सहसंबंध या आर-स्क्वेर देख सकते हैं लेकिन फिर भी महत्वपूर्ण परिणाम नहीं है। कभी-कभी आपको एक परिणाम मिल सकता है जहां कम सहसंबंध अभी भी महत्वपूर्ण सहसंबंध है। इस मामले में गैर महत्वपूर्ण संबंध का कारण यह है कि हमारे पास पर्याप्त डेटा (एन = 6, अवशिष्ट डीएफ = 4) नहीं है, इसलिए एफ को अंश 1 एफएफ बनाम 4 मूल्यवर्ग डीएफ के साथ एफ वितरण पर देखा जाना चाहिए। तो यह मामला हम बाहर नहीं कर सकते हैं ढलान 0 के बराबर नहीं है।
आइए एक और उदाहरण देखें:
X = c(4,5,8,6,2, 5,6,4,2,3, 8,2,5,6,3, 8,9,3,5,10)
Y = c(3,6,9,8,6, 8,6,8,10,5, 3,3,2,4,3, 11,12,4,2,14)
reg3 <- lm(Y~X)
anova(reg3)
Analysis of Variance Table
Response: Y
Df Sum Sq Mean Sq F value Pr(>F)
X 1 69.009 69.009 7.414 0.01396 *
Residuals 18 167.541 9.308
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
इस नए डेटा के लिए आर-स्क्वायर मान:
summary(reg3)$r.squared
[1] 0.2917296
cor(X,Y)
[1] 0.54012
यद्यपि सहसंबंध पिछले मामले की तुलना में कम है, लेकिन हमें एक महत्वपूर्ण ढलान मिला है। अधिक डेटा df को बढ़ाता है और पर्याप्त जानकारी प्रदान करता है ताकि हम अशक्त परिकल्पना को खारिज कर सकें कि ढलान शून्य के बराबर नहीं है।
चलो एक और उदाहरण लेते हैं जहां नकारात्मक सहसंबंध है:
X1 = c(4,5,8,6,12,15)
Y1 = c(18,16,2,4,2, 8)
# correlation
cor(X1,Y1)
-0.5266847
# r-square using regression
reg2 <- lm(Y1~X1)
summary(reg2)$r.squared
0.2773967
sqrt(summary(reg2)$r.squared)
[1] 0.5266847
चूँकि मान चुकता था वर्गमूल यहाँ सकारात्मक या नकारात्मक संबंध के बारे में जानकारी नहीं देगा। लेकिन परिमाण एक ही है।
एकाधिक प्रतिगमन मामला:
एकाधिक रेखीय प्रतिगमन दो या दो से अधिक व्याख्यात्मक चर और प्रतिक्रिया चर के बीच संबंध को मॉडल करने के लिए एक रेखीय समीकरण को प्रेक्षित डेटा के द्वारा फिटिंग करने का प्रयास करता है। उपरोक्त चर्चा को कई प्रतिगमन मामले में बढ़ाया जा सकता है। इस मामले में हमारे पास कार्यकाल में कई बीटा हैं:
y = a + beta1X1 + beta2X2 + beta2X3 + ................+ betapXp + error
Example:
X1 = c(4,5,8,6,2, 5,6,4,2,3, 8,2,5,6,3, 8,9,3,5,10)
X2 = c(14,15,8,16,2, 15,3,2,4,7, 9,12,5,6,3, 12,19,13,15,20)
Y = c(3,6,9,8,6, 8,6,8,10,5, 3,3,2,4,3, 11,12,4,2,14)
reg4 <- lm(Y~X1+X2)
आइए देखें मॉडल के गुणांक:
reg4$coefficients
(Intercept) X1 X2
2.04055116 0.72169350 0.05566427
इस प्रकार आपका कई रैखिक प्रतिगमन मॉडल होगा:
Y = 2.04055116 + 0.72169350 * X1 + 0.05566427* X2
अब एक्स और एक्स 2 के लिए 0 से अधिक होने पर बीटा टेस्ट करता है।
anova(reg4)
Analysis of Variance Table
Response: Y
Df Sum Sq Mean Sq F value Pr(>F)
X1 1 69.009 69.009 7.0655 0.01656 *
X2 1 1.504 1.504 0.1540 0.69965
Residuals 17 166.038 9.767
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
यहां हम कहते हैं कि X1 की ढलान 0 से अधिक है, जबकि हम यह तय नहीं कर सके कि X2 की ढलान 0 से अधिक हो।
कृपया ध्यान दें कि ढलान X1 और Y या X2 और Y के बीच सहसंबंध नहीं है।
> cor(Y, X1)
[1] 0.54012
> cor(Y,X2)
[1] 0.3361571
एकाधिक परिवर्तनशील स्थिति में (जहाँ चर दो से अधिक आंशिक सहसंबंध है, नाटक में आता है। आंशिक सहसंबंध दो चर का परस्पर संबंध है, जबकि तीसरे या अधिक अन्य चर के लिए नियंत्रित होता है।
source("http://www.yilab.gatech.edu/pcor.R")
pcor.test(X1, Y,X2)
estimate p.value statistic n gn Method Use
1 0.4567979 0.03424027 2.117231 20 1 Pearson Var-Cov matrix
pcor.test(X2, Y,X1)
estimate p.value statistic n gn Method Use
1 0.09473812 0.6947774 0.3923801 20 1 Pearson Var-Cov matrix