आर में तीन-तरफ़ा एनोवा कैसे निष्पादित करें


तीन-तरफा एनोवा का उपयोग यह निर्धारित करने के लिए किया जाता है कि तीन या अधिक स्वतंत्र समूहों के साधनों के बीच सांख्यिकीय रूप से महत्वपूर्ण अंतर है या नहीं, जिन्हें तीन कारकों में वितरित किया गया है।

निम्नलिखित उदाहरण दिखाता है कि आर में तीन-तरफ़ा एनोवा कैसे निष्पादित करें।

उदाहरण: आर में थ्री-वे एनोवा

मान लीजिए कि एक शोधकर्ता यह निर्धारित करना चाहता है कि क्या दो प्रशिक्षण कार्यक्रमों से कॉलेज बास्केटबॉल खिलाड़ियों के बीच कूद की ऊंचाई में अलग-अलग औसत सुधार होता है।

शोधकर्ता को संदेह है कि लिंग और विभाजन (डिवीजन I या II) भी छलांग की ऊंचाई को प्रभावित कर सकते हैं, यही कारण है कि वह इन कारकों पर भी डेटा एकत्र करते हैं।

उनका लक्ष्य यह निर्धारित करने के लिए तीन-तरफा एनोवा का प्रदर्शन करना है कि प्रशिक्षण कार्यक्रम, लिंग और विभाजन कूद की ऊँचाई को कैसे प्रभावित करते हैं।

आर में इस तीन-तरफा एनोवा को निष्पादित करने के लिए निम्नलिखित चरणों का पालन करें:

चरण 1: डेटा बनाएं

सबसे पहले, आइए डेटा को रखने के लिए एक डेटा फ़्रेम बनाएं:

 #create dataset
df <- data. frame (program=rep(c(1, 2), each= 20 ),
                 gender=rep(c(' M ', ' F '), each= 10 , times= 2 ),
                 division=rep(c(1, 2), each= 5 , times= 4 ),
                 height=c(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 six rows of dataset
head(df)

  program gender division height
1 1 M 1 7
2 1 M 1 7
3 1 M 1 8
4 1 M 1 8
5 1 M 1 7
6 1 M 2 6

चरण 2: वर्णनात्मक आँकड़े देखें

तीन-तरफा एनोवा प्रदर्शन करने से पहले, हम प्रशिक्षण कार्यक्रम, लिंग और विभाजन के आधार पर समूहीकृत औसत छलांग ऊंचाई वृद्धि को संक्षेप में प्रस्तुत करने के लिए dplyr का उपयोग कर सकते हैं:

 library (dplyr)

#calculate mean jumping height increase grouped by program, gender, and division
df %>%
  group_by(program, gender, division) %>%
  summarize(mean_height = mean(height))

# A tibble: 8 x 4
# Groups: program, gender [4]
  program gender division mean_height
                 
1 1 F 1 4.6
2 1 F 2 3.2
3 1 M 1 7.4
4 1 M 2 5.6
5 2 F 1 2.6
6 2 F 2 1.4
7 2 M 1 5.2
8 2 M 2 4  

यहां परिणाम की व्याख्या करने का तरीका बताया गया है:

  • प्रशिक्षण कार्यक्रम 1 का उपयोग करने वाली डिवीजन I महिलाओं की छलांग की ऊंचाई में औसत वृद्धि 4.6 इंच थी।
  • प्रशिक्षण कार्यक्रम 1 का उपयोग करने वाली डिवीजन II महिलाओं के बीच कूद की ऊंचाई में औसत वृद्धि 3.2 इंच थी।
  • प्रशिक्षण कार्यक्रम 1 का उपयोग करने वाले डिवीजन I पुरुषों के बीच कूद की ऊंचाई में औसत वृद्धि 7.4 इंच थी।

और इसी तरह।

चरण 3: तीन-तरफ़ा एनोवा निष्पादित करें

इसके बाद, हम तीन-तरफ़ा एनोवा निष्पादित करने के लिए aov() फ़ंक्शन का उपयोग कर सकते हैं:

 #perform three-way ANOVA
model <- aov(height ~ program * gender * division, data=df)

#view summary of three-way ANOVA
summary(model)

                        Df Sum Sq Mean Sq F value Pr(>F)    
program 1 36.1 36.10 65.636 2.98e-09 ***
gender 1 67.6 67.60 122.909 1.71e-12 ***
division 1 19.6 19.60 35.636 1.19e-06 ***
program:gender 1 0.0 0.00 0.000 1.000    
program:division 1 0.4 0.40 0.727 0.400    
gender:division 1 0.1 0.10 0.182 0.673    
program:gender:division 1 0.1 0.10 0.182 0.673    
Residuals 32 17.6 0.55                     
---
Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

पीआर(>एफ) कॉलम प्रत्येक व्यक्तिगत कारक के लिए पी-मान और कारकों के बीच बातचीत को प्रदर्शित करता है।

परिणामों से, हम देख सकते हैं कि तीन कारकों के बीच कोई भी इंटरैक्शन सांख्यिकीय रूप से महत्वपूर्ण नहीं था।

हम यह भी देख सकते हैं कि तीन कारकों में से प्रत्येक – कार्यक्रम, लिंग और विभाजन – सांख्यिकीय रूप से महत्वपूर्ण था।

अब हम प्रोग्राम, लिंग और डिवीजन के लिए अलग-अलग औसत छलांग ऊंचाई वृद्धि का पता लगाने के लिए फिर से dplyr का उपयोग कर सकते हैं:

 library (dplyr)

#find mean jumping increase by program
df %>%
  group_by(program) %>%
  summarize(mean_height = mean(height))

# A tibble: 2 x 2
  program mean_height
           
1 1 5.2
2 2 3.3

#find mean jumping increase by gender
df %>%
  group_by(gender) %>%
  summarize(mean_height = mean(height))

# A tibble: 2 x 2
  gender mean_height
          
1 F 2.95
2M 5.55

#find mean jumping increase by division
df %>%
group_by(division) %>%
summarize(mean_height = mean(height))

# A tibble: 2 x 2
  division mean_height
            
1 1 4.95
2 2 3.55

परिणाम से हम निम्नलिखित देख सकते हैं:

  • प्रशिक्षण कार्यक्रम 1 ( 5.2 इंच ) का उपयोग करने वाले व्यक्तियों की छलांग ऊंचाई में औसत वृद्धि प्रशिक्षण कार्यक्रम 2 (3.3 इंच ) का उपयोग करने वाले व्यक्तियों की औसत वृद्धि से अधिक थी।
  • पुरुषों की छलांग ऊंचाई में औसत वृद्धि ( 5.55 इंच ) महिलाओं की औसत वृद्धि (2.95 इंच ) से अधिक थी।
  • डिवीजन 1 खिलाड़ियों के बीच कूद की ऊंचाई में औसत वृद्धि ( 4.95 इंच ) डिवीजन 2 खिलाड़ियों (3.55 इंच ) के बीच औसत वृद्धि से अधिक थी।

अंत में, हम कहेंगे कि प्रशिक्षण कार्यक्रम, लिंग और विभाजन सभी खिलाड़ियों में बढ़ी हुई कूद ऊंचाई के महत्वपूर्ण संकेतक हैं।

हम यह भी कहेंगे कि इन तीन कारकों के बीच कोई महत्वपूर्ण परस्पर क्रिया प्रभाव नहीं है।

अतिरिक्त संसाधन

निम्नलिखित ट्यूटोरियल बताते हैं कि आर में अन्य एनोवा मॉडल को कैसे फिट किया जाए:

आर में एकतरफ़ा एनोवा कैसे निष्पादित करें
आर में दो-तरफा एनोवा कैसे निष्पादित करें

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

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