पायथन में थ्री-वे एनोवा कैसे निष्पादित करें
तीन-तरफा एनोवा का उपयोग यह निर्धारित करने के लिए किया जाता है कि तीन या अधिक स्वतंत्र समूहों के साधनों के बीच सांख्यिकीय रूप से महत्वपूर्ण अंतर है या नहीं, जिन्हें तीन कारकों में वितरित किया गया है।
निम्नलिखित उदाहरण दिखाता है कि पायथन में तीन-तरफ़ा एनोवा कैसे निष्पादित करें।
उदाहरण: पायथन में थ्री-वे एनोवा
मान लीजिए कि एक शोधकर्ता यह निर्धारित करना चाहता है कि क्या दो प्रशिक्षण कार्यक्रमों से कॉलेज बास्केटबॉल खिलाड़ियों के बीच कूद की ऊंचाई में अलग-अलग औसत सुधार होता है।
शोधकर्ता को संदेह है कि लिंग और विभाजन (डिवीजन I या II) भी छलांग की ऊंचाई को प्रभावित कर सकते हैं, यही कारण है कि वह इन कारकों पर भी डेटा एकत्र करते हैं।
उनका लक्ष्य यह निर्धारित करने के लिए तीन-तरफा एनोवा का प्रदर्शन करना है कि प्रशिक्षण कार्यक्रम, लिंग और विभाजन कूद की ऊंचाई को कैसे प्रभावित करते हैं।
पायथन में इस तीन-तरफ़ा एनोवा को निष्पादित करने के लिए निम्नलिखित चरणों का उपयोग करें:
चरण 1: डेटा बनाएं
सबसे पहले, आइए डेटा रखने के लिए एक पांडा डेटाफ़्रेम बनाएं:
import numpy as np
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' program ': np.repeat ([1,2],20),
' gender ': np. tile (np. repeat (['M', 'F'], 10), 2),
' division ': np. tile (np. repeat ([1, 2], 5), 4),
' height ': [7, 7, 8, 8, 7, 6, 6, 5, 6, 5,
5, 5, 4, 5, 4, 3, 3, 4, 3, 3,
6, 6, 5, 4, 5, 4, 5, 4, 4, 3,
2, 2, 1, 4, 4, 2, 1, 1, 2, 1]})
#view first ten rows of DataFrame
df[:10]
program gender division height
0 1 M 1 7
1 1 M 1 7
2 1 M 1 8
3 1 M 1 8
4 1 M 1 7
5 1 M 2 6
6 1 M 2 6
7 1 M 2 5
8 1 M 2 6
9 1 M 2 5
चरण 2: तीन-तरफ़ा एनोवा निष्पादित करें
इसके बाद, हम तीन-तरफ़ा एनोवा निष्पादित करने के लिए स्टैटमॉडल लाइब्रेरी से anova_lm() फ़ंक्शन का उपयोग कर सकते हैं:
import statsmodels. api as sm
from statsmodels. formula . api import ols
#perform three-way ANOVA
model = ols("""height ~ C(program) + C(gender) + C(division) +
C(program):C(gender) + C(program):C(division) + C(gender):C(division) +
C(program):C(gender):C(division)""", data=df) .fit ()
sm. stats . anova_lm (model, typ= 2 )
sum_sq df F PR(>F)
C(program) 3.610000e+01 1.0 6.563636e+01 2.983934e-09
C(gender) 6.760000e+01 1.0 1.229091e+02 1.714432e-12
C(division) 1.960000e+01 1.0 3.563636e+01 1.185218e-06
C(program):C(gender) 2.621672e-30 1.0 4.766677e-30 1.000000e+00
C(program):C(division) 4.000000e-01 1.0 7.272727e-01 4.001069e-01
C(gender):C(division) 1.000000e-01 1.0 1.818182e-01 6.726702e-01
C(program):C(gender):C(division) 1.000000e-01 1.0 1.818182e-01 6.726702e-01
Residual 1.760000e+01 32.0 NaN NaN
चरण 3: परिणामों की व्याख्या करें
पीआर(>एफ) कॉलम प्रत्येक व्यक्तिगत कारक के लिए पी-मान और कारकों के बीच बातचीत को प्रदर्शित करता है।
परिणामों से, हम देख सकते हैं कि तीन कारकों के बीच कोई भी इंटरैक्शन सांख्यिकीय रूप से महत्वपूर्ण नहीं था।
हम यह भी देख सकते हैं कि तीन कारकों (कार्यक्रम, लिंग और विभाजन) में से प्रत्येक निम्नलिखित पी-मूल्यों के साथ सांख्यिकीय रूप से महत्वपूर्ण था:
- प्रोग्राम पी-वैल्यू: 0.000000000298
- लिंग पी-मान: 0.000000000171
- डिवीजन पी-वैल्यू: 0.00000185
अंत में, हम कहेंगे कि प्रशिक्षण कार्यक्रम, लिंग और विभाजन सभी खिलाड़ियों में बढ़ी हुई कूद ऊंचाई के महत्वपूर्ण संकेतक हैं।
हम यह भी कहेंगे कि इन तीन कारकों के बीच कोई महत्वपूर्ण परस्पर क्रिया प्रभाव नहीं है।
अतिरिक्त संसाधन
निम्नलिखित ट्यूटोरियल बताते हैं कि पायथन में अन्य एनोवा मॉडल को कैसे फिट किया जाए:
पायथन में वन-वे एनोवा कैसे निष्पादित करें
पायथन में टू-वे एनोवा कैसे निष्पादित करें
पायथन में एनोवा द्वारा दोहराए गए उपाय कैसे करें