R प्रोग्रामिंग में T-टेस्ट: एक नमूना और युग्मित उदाहरण

⚡ स्मार्ट सारांश

R में T-टेस्ट, t.test() फ़ंक्शन का उपयोग करके माध्यों की तुलना करता है, जिसमें एक नमूने को एक निश्चित लक्ष्य, दो स्वतंत्र समूहों और युग्मित दोहराए गए मापों के विरुद्ध शामिल किया जाता है। यह विस्तृत विवरण प्रत्येक प्रकार को चलाकर, p-मान को सही ढंग से पढ़कर, अंतर्निहित मान्यताओं को सत्यापित करता है।

  • 📐 मुख्य सांख्यिकी: टी-मान प्रेक्षित माध्य अंतर को उसकी मानक त्रुटि से विभाजित करता है, इसलिए बड़े मान शून्य परिकल्पना के विरुद्ध तर्क देते हैं।
  • 🧪 एक-नमूना परीक्षण: t.test(x, mu = 10) एक एकल वेक्टर की तुलना किसी सैद्धांतिक मान जैसे कि रेसिपी विनिर्देशन से करता है।
  • 👥 दो-नमूना परीक्षण: t.test(x, y) दो स्वतंत्र समूहों की तुलना करता है और असमान भिन्नता के लिए वेल्च सुधार को डिफ़ॉल्ट रूप से लागू करता है।
  • 🔗 युग्मित परीक्षण: paired = TRUE जोड़ने से विषय के भीतर के अंतरों के माध्य का परीक्षण होता है और साझा भिन्नता को हटा दिया जाता है।
  • धारणा जाँच: किसी भी p-मान की रिपोर्ट करने से पहले सामान्यता के लिए shapiro.test() और समान विचरण के लिए var.test() का उपयोग करें।
  • 📊 निर्णय नियम: 0.05 से कम का पी-मान शून्य परिकल्पना को अस्वीकार करता है, लेकिन वैकल्पिक परिकल्पना को कभी भी सत्य साबित नहीं करता है।

R में टी टेस्ट, एक नमूना युग्मित

सांख्यिकीय अनुमान क्या है?

सांख्यिकीय अनुमान डेटा के वितरण के बारे में निष्कर्ष निकालने की कला है। एक डेटा वैज्ञानिक को अक्सर ऐसे प्रश्नों का सामना करना पड़ता है जिनका उत्तर केवल वैज्ञानिक रूप से ही दिया जा सकता है। इसलिए, सांख्यिकीय अनुमान एक ऐसी रणनीति है जिससे यह परीक्षण किया जाता है कि कोई परिकल्पना सत्य है या नहीं, अर्थात् डेटा द्वारा मान्य है या नहीं।

किसी परिकल्पना का आकलन करने की एक सामान्य रणनीति टी-परीक्षण है, जो यह बताता है कि दो माध्य बराबर हैं या नहीं। इसे इस नाम से भी जाना जाता है छात्र परीक्षाटी-टेस्ट निम्नलिखित के लिए गणना की जा सकती है:

  1. एक निश्चित मान के विरुद्ध एकल सदिश (एक-नमूना टी-परीक्षण)
  2. दो अलग-अलग समूहों से दो वैक्टर (स्वतंत्र दो-नमूना टी-परीक्षण)
  3. एक ही विषय पर मापे गए दो वैक्टर (युग्मित टी-परीक्षण)

प्रत्येक टी-परीक्षण यह मानता है कि डेटा यादृच्छिक रूप से नमूना लिया गया है और मान (या, युग्मित परीक्षण के लिए, अंतर) लगभग सामान्य रूप से वितरित जनसंख्या से आते हैं। स्वतंत्र दो-नमूना संस्करण अतिरिक्त रूप से यह मानता है कि दोनों समूह एक दूसरे से स्वतंत्र हैं, और पारंपरिक रूप यह मानता है कि उनके प्रसरण बराबर हैं।

आर प्रोग्रामिंग में टी-टेस्ट क्या है?

टी-टेस्ट के पीछे मूल विचार दो विपरीत परिकल्पनाओं का मूल्यांकन करने के लिए सांख्यिकी का उपयोग करना है:

  • H0शून्य परिकल्पना, जिसके अनुसार जनसंख्या का माध्य परीक्षण किए जा रहे मान के बराबर होता है।
  • H1वैकल्पिक परिकल्पना यह है कि जनसंख्या माध्य उस मान से भिन्न है।

टी-परीक्षण छोटे नमूना आकारों के लिए डिज़ाइन किया गया है, जहाँ सामान्य सन्निकटन अविश्वसनीय होता है। इसके लिए डेटा का लगभग सामान्य रूप से वितरित होना आवश्यक है।

आर में टी-टेस्ट सिंटैक्स

R में t.test() का मूल सिंटैक्स है:

t.test(x, y = NULL,
       mu = 0, var.equal = FALSE)
arguments:
- x : A vector to compute the one-sample t-test
- y: A second vector to compute the two sample t-test
- mu: Mean of the population under the null hypothesis
- var.equal: Specify whether the variances of the two vectors are equal. By default, set to `FALSE`
- paired: Set to `TRUE` when the two vectors are repeated measures on the same subjects

कुछ भी चलाने से पहले, अपने डेटा लेआउट को परीक्षण के सही प्रकार से मिला लें।

R में T-परीक्षण के प्रकार

गलत विकल्प का चयन करना टी-टेस्ट की सबसे आम गलती है, इसलिए अपने डेटा लेआउट को सही विकल्प से मिलाकर शुरुआत करें।

प्रकार इसका उपयोग तब करें जब आर कॉल
एक-नमूना एक समूह की तुलना ज्ञात लक्ष्य मान से की गई। t.test(x, mu = मान)
स्वतंत्र दो-नमूना (वेल्च) दो अलग-अलग समूह, जिनके विचरण संभवतः असमान हैं। टी.टेस्ट(एक्स, वाई)
स्वतंत्र दो-नमूना (पूल किया हुआ) समान भिन्नता वाले दो अलग-अलग समूह t.test(x, y, var.equal = TRUE)
युग्मित उन्हीं विषयों का दो बार मापन किया गया। t.test(x, y, युग्मित = TRUE)
एकतरफ़ा आपको सिर्फ एक ही दिशा में अंतर की परवाह है t.test(x, mu = मान, alternative = “greater”)

तीन समूहों से आगे, टी-परीक्षण उपयुक्त नहीं रह जाता है। इसके बजाय दूसरे विकल्प पर जाएं। एनोवा परीक्षणजिससे बार-बार की जाने वाली जोड़ीदार तुलनाओं में त्रुटि दर बढ़ने के बजाय समग्र त्रुटि दर 5 प्रतिशत पर बनी रहती है।

आर में एक नमूना टी-टेस्ट

वन सैंपल टी-टेस्ट, या छात्र परीक्षण, एक सदिश के माध्य की तुलना एक सैद्धांतिक माध्य से करता है, आर में एक नमूना टी-टेस्टटी-परीक्षण की गणना के लिए प्रयुक्त सूत्र है:

आर में एक नमूना टी-टेस्ट

यहाँ,

  • आर में एक नमूना टी-टेस्ट मतलब को संदर्भित करता है
  • आर में एक नमूना टी-टेस्ट सैद्धांतिक माध्य तक
  • s मानक विचलन है
  • n अवलोकनों की संख्या.

टी-परीक्षण के सांख्यिकीय महत्व का मूल्यांकन करने के लिए, आपको गणना करने की आवश्यकता है पी - मूल्यपी - मूल्य 0 से 1 तक होता है, और इसकी व्याख्या इस प्रकार की जाती है:

  • 0.05 से कम p-मान का अर्थ है कि आप शून्य परिकल्पना को अस्वीकार कर सकते हैं। ध्यान दें कि H0 को अस्वीकार करना H1 को सत्य सिद्ध करने के समान नहीं है, इसका अर्थ केवल यह है कि H0 के अंतर्गत डेटा की संभावना कम है।
  • 0.05 से अधिक का पी-मान यह दर्शाता है कि आपके पास शून्य परिकल्पना को अस्वीकार करने के लिए पर्याप्त सबूत नहीं हैं।

आप स्टूडेंट वितरण में टी-परीक्षण के संगत निरपेक्ष मान को देखकर पी-मान का निर्माण कर सकते हैं, जिसमें स्वतंत्रता की डिग्री बराबर होती है आर में एक नमूना टी-टेस्ट

उदाहरण के लिए, 5 प्रेक्षणों के साथ आप अपने t-मान की तुलना 95 प्रतिशत विश्वास स्तर पर 4 डिग्री ऑफ़ फ़्रीडम वाले स्टूडेंट वितरण से करते हैं। दो-तरफ़ा परीक्षण में शून्य परिकल्पना को अस्वीकार करने के लिए, निरपेक्ष t-मान 2.776 से अधिक होना चाहिए।

नीचे दी गई तालिका देखें:

आर में एक नमूना टी-टेस्ट

आर में एक नमूना टी-टेस्ट उदाहरण

मान लीजिए कि आप कुकीज़ बनाने वाली कंपनी हैं। प्रत्येक कुकी में 10 ग्राम चीनी होनी चाहिए। कुकीज़ एक मशीन द्वारा बनाई जाती हैं जो सब कुछ मिलाने से पहले एक कटोरे में चीनी डालती है। आपको लगता है कि मशीन प्रत्येक कुकी के लिए 10 ग्राम चीनी नहीं डालती है। यदि आपकी धारणा सही है, तो मशीन को ठीक करने की आवश्यकता है। आपने तीस कुकीज़ की चीनी का स्तर संग्रहीत किया।

नोट: आप rnorm() फ़ंक्शन के साथ एक यादृच्छिक वेक्टर बना सकते हैं। यह फ़ंक्शन सामान्य रूप से वितरित मान उत्पन्न करता है। मूल सिंटैक्स है:

rnorm(n, mean, sd)
arguments
- n: Number of observations to generate
- mean: The mean of the distribution. Optional
- sd: The standard deviation of the distribution. Optional

आप 30 प्रेक्षणों वाला एक वितरण बना सकते हैं जिसका माध्य 9.99 और मानक विचलन 0.04 हो।

set.seed(123)
sugar_cookie <- rnorm(30, mean = 9.99, sd = 0.04)
head(sugar_cookie)

आउटपुट:

## [1]  9.967581  9.980793 10.052348  9.992820  9.995172 10.058603

आप एक-नमूना टी-परीक्षण का उपयोग करके जाँच कर सकते हैं कि चीनी का स्तर नुस्खा से अलग है या नहीं। आप एक परिकल्पना परीक्षण कर सकते हैं:

  • H0: शर्करा का औसत स्तर 10 के बराबर है
  • H1: शुगर का औसत स्तर 10 से अलग है

आप 0.05 का महत्व स्तर उपयोग करते हैं।

# H0 : mu = 10
t.test(sugar_cookie, mu = 10)

यहाँ उत्पादन है:

आर में एक नमूना टी-टेस्ट उदाहरण

एक-नमूना t-परीक्षण का p-मान 0.1079 है, जो 0.05 की सीमा से ऊपर है। माध्य के लिए 95 प्रतिशत विश्वास अंतराल 9.973 से 10.002 ग्राम तक फैला हुआ है, और इसमें लक्ष्य मान 10 शामिल है। इसलिए आप H0 को अस्वीकार नहीं कर सकते: इस बात का पर्याप्त प्रमाण नहीं है कि मशीन निर्धारित विधि से विचलित होती है।

R में स्वतंत्र दो-नमूना टी-परीक्षण

स्वतंत्र दो-नमूना टी-परीक्षण सबसे अधिक उपयोग किया जाने वाला प्रकार है, और यह तब लागू होता है जब माप के दो सेट अलग-अलग विषयों से आते हैं: दो दुकानें, दो मशीनें, दो उपचार समूह।

मान लीजिए कि एक कारखाने में दो उत्पादन लाइनें चलती हैं और आप यह जानना चाहते हैं कि क्या वे जारों को समान वजन तक भरती हैं।

set.seed(123)
line_a <- rnorm(25, mean = 500, sd = 8)
line_b <- rnorm(25, mean = 505, sd = 8)

# Welch test, the safe default
t.test(line_a, line_b)

# Pooled test, only when the variances are equal
t.test(line_a, line_b, var.equal = TRUE)

आउटपुट को चार चरणों में पढ़ें।

  1. t यह दो माध्यों के बीच के अंतर का मानकीकृत आकार है। इसका चिह्न केवल वैक्टरों को प्रस्तुत करने के क्रम को दर्शाता है।
  2. df यह स्वतंत्रता की डिग्री है। वेल्च एक भिन्नात्मक मान देता है; पूल्ड परीक्षण n1 + n2 – 2 के बराबर एक पूर्ण संख्या देता है।
  3. पी - मूल्य यदि वास्तविक माध्य समान हों तो इस तरह का बड़ा अंतर देखने की संभावना क्या है?
  4. विश्वास अंतराल यह वास्तविक अंतर को सीमित करता है। जब इसमें शून्य शामिल होता है, तो उस स्तर पर अंतर महत्वपूर्ण नहीं होता है।

यदि आपका डेटा एक ही डेटा फ्रेम में है जिसमें मानों का एक कॉलम और एक फैक्टर कॉलम है, तो इसके बजाय फ़ॉर्मूला इंटरफ़ेस का उपयोग करें, जो पढ़ने में आसान है और डेटा को मैन्युअल रूप से विभाजित करने से बचाता है:

t.test(weight ~ line, data = jars)

कौन सा संस्करण इस्तेमाल करना है? जब तक आप समान भिन्नताओं का परीक्षण और पुष्टि न कर लें, तब तक var.equal को उसके डिफ़ॉल्ट मान FALSE पर ही रहने दें। जब भिन्नताएं मेल खाती हैं, तो वेल्च का सुधार बिजली की खपत में लगभग नगण्य खर्च करता है, और जब भिन्नताएं मेल नहीं खातीं, तब यह आपकी सुरक्षा करता है।

आर में युग्मित टी-परीक्षण

युग्मित टी-परीक्षण, जिसे आश्रित नमूना टी-परीक्षण भी कहा जाता है, तब लागू होता है जब एक ही समूह को दो बार मापा जाता है। इसके विशिष्ट अनुप्रयोग इस प्रकार हैं:

  • ए / बी परीक्षण: दो वेरिएंट की तुलना करें
  • केस कंट्रोल अध्ययनएक ही व्यक्ति पर उपचार से पहले और बाद की स्थिति

आर में युग्मित टी-टेस्ट उदाहरण

एक पेय पदार्थ कंपनी बिक्री पर छूट कार्यक्रम के प्रदर्शन को जानने में रुचि रखती है। कंपनी ने अपनी एक दुकान की दैनिक बिक्री का अनुसरण करने का निर्णय लिया, जहाँ कार्यक्रम का प्रचार किया जा रहा है। कार्यक्रम के अंत में, कंपनी यह जानना चाहती है कि कार्यक्रम से पहले और बाद में दुकान की औसत बिक्री के बीच कोई सांख्यिकीय अंतर है या नहीं।

  • कंपनी tracकार्यक्रम शुरू होने से पहले हमने प्रतिदिन बिक्री का आकलन किया। यह हमारा पहला कदम है।
  • इस कार्यक्रम का प्रचार एक सप्ताह तक किया जाता है और बिक्री हर दिन दर्ज की जाती है। यह हमारा दूसरा वेक्टर है।
  • आप कार्यक्रम की प्रभावशीलता का आकलन करने के लिए टी-टेस्ट करेंगे। इसे युग्मित टी-टेस्ट कहा जाता है क्योंकि दोनों वैक्टर के मान एक ही वितरण (यानी, एक ही दुकान) से आते हैं।

परिकल्पना परीक्षण इस प्रकार है:

  • H0: माध्य में कोई अंतर नहीं
  • H1: दोनों साधन अलग-अलग हैं

ध्यान रखें कि क्लासिक टी-टेस्ट दोनों समूहों में अज्ञात लेकिन समान विचरण को मानता है। वास्तविक डेटा शायद ही कभी इसे पूरी तरह से संतुष्ट करता है, और इस अंतर को अनदेखा करने से परिणाम विकृत हो सकता है।

इसका उपाय वेल्च का टी-टेस्ट है, जो समान-विचरण की धारणा को शिथिल करता है। R इसे डिफ़ॉल्ट रूप से लागू करता है क्योंकि var.equal का मान FALSE होता है, जब तक कि आप अन्यथा निर्दिष्ट न करें। इस डेटासेट में दोनों वैक्टर समान मानक विचलन के साथ उत्पन्न किए गए थे, इसलिए आप निश्चिंत रूप से var.equal = TRUE सेट कर सकते हैं।

आप कार्यक्रम के बाद बिक्री के लिए उच्च माध्य वाले गाऊसी वितरण से दो यादृच्छिक सदिश बनाते हैं।

set.seed(123)
# sales before the program
sales_before <- rnorm(7, mean = 50000, sd = 50)
# sales after the program.This has higher mean
sales_after <- rnorm(7, mean = 50075, sd = 50)
# draw the distribution
t.test(sales_before, sales_after,var.equal = TRUE)

आर में युग्मित टी-टेस्ट उदाहरण

पी-वैल्यू 0.04606 है, जो 0.05 की सीमा से थोड़ा नीचे है, इसलिए आप H0 को अस्वीकार करते हैं और यह निष्कर्ष निकालते हैं कि दोनों औसत में महत्वपूर्ण अंतर है। छूट कार्यक्रम से बिक्री में वृद्धि हुई प्रतीत होती है।

⚠️ महत्वपूर्ण: ऊपर दिया गया कॉल दो वैक्टरों की तुलना करता है। स्वतंत्र नमूने। चूंकि दोनों श्रृंखलाएं एक ही दुकान पर किए गए माप हैं, इसलिए सांख्यिकीय रूप से सही कॉल जुड़ जाता है। युग्मित = सत्य:

t.test(sales_before, sales_after, paired = TRUE)

युग्मित विधि दो माध्यों के अंतर के बजाय दिन-प्रतिदिन के अंतरों के माध्य का परीक्षण करती है। यह दोनों वैक्टरों द्वारा साझा की गई दुकान-स्तरीय भिन्नता को हटा देती है और इसलिए इसकी सांख्यिकीय शक्ति अधिक होती है।

R में T-टेस्ट की मान्यताओं की जाँच कैसे करें

टी-टेस्ट का पी-वैल्यू तभी सार्थक होता है जब उसकी मान्यताएं सही हों। प्रत्येक की प्रत्यक्ष जांच की जाती है।

1. सामान्यता। एक-नमूना और दो-नमूना परीक्षण यह मानते हैं कि मान लगभग सामान्य हैं; युग्मित परीक्षण यह मानता है कि मतभेद हैं। एक क्यूक्यू प्लॉट का निरीक्षण करें और शापिरो-विल्क परीक्षण से इसकी पुष्टि करें:

qqnorm(sugar_cookie); qqline(sugar_cookie)
shapiro.test(sugar_cookie)

# for a paired design, test the differences
shapiro.test(sales_after - sales_before)

0.05 से अधिक का शैपिरो-विल्क पी-मान यह दर्शाता है कि सामान्यता को अस्वीकार नहीं किया जा सकता है। प्रति समूह लगभग 30 से अधिक प्रेक्षणों के साथ, केंद्रीय सीमा प्रमेय टी-परीक्षण को मध्यम विषमता के प्रति भी सुदृढ़ बनाता है।

2. समान विचरण। केवल पूल्ड टू-सैंपल टेस्ट को इसकी आवश्यकता होती है। इसे एफ-टेस्ट से टेस्ट करें:

var.test(line_a, line_b)

0.05 से ऊपर का p-मान समान प्रसरण का समर्थन करता है, जो var.equal = TRUE को उचित ठहराता है।

3. स्वतंत्रता। यह अध्ययन की संरचना से स्पष्ट है और बाद में इसका परीक्षण नहीं किया जा सकता। यदि एक ही विषय दोनों कारकों में योगदान देता है, तो स्वतंत्र परीक्षण एक गलत उपकरण है और आपको युग्मित = सत्य की आवश्यकता है।

जब कोई धारणा गलत साबित हो जाती है। छोटे सैंपल वाले स्पष्ट रूप से गैर-सामान्य डेटा के लिए, रैंक-आधारित विकल्पों का उपयोग करें: wilcox.test(x, y) दो-सैंपल t-टेस्ट की जगह लेता है और wilcox.test(x, y, paired = TRUE) युग्मित संस्करण की जगह लेता है। दोनों के लिए सामान्यता अनिवार्य नहीं है, हालांकि डेटा के वास्तव में सामान्य होने पर दोनों ही थोड़ी शक्ति का त्याग करते हैं।

R में T-टेस्ट: मुख्य बिंदु और परीक्षण संदर्भ

  • सांख्यिकीय अनुमान डेटा के वितरण के बारे में निष्कर्ष निकालने की कला है।
  • टी-टेस्ट अनुमानात्मक सांख्यिकी के परिवार से संबंधित है। इसका उपयोग आमतौर पर यह पता लगाने के लिए किया जाता है कि दो समूहों के माध्य के बीच कोई सांख्यिकीय अंतर है या नहीं।
  • एक-नमूना टी-परीक्षण, या स्टूडेंट का परीक्षण, एक सदिश के माध्य की तुलना एक सैद्धांतिक माध्य से करता है।
  • युग्मित टी-परीक्षण, या आश्रित नमूना टी-परीक्षण, तब लागू होता है जब एक ही समूह को दो बार मापा जाता है।

नीचे दी गई तालिका में ऊपर बताए गए प्रत्येक परीक्षण का सारांश दिया गया है:

टेस्ट परीक्षण हेतु परिकल्पना पी - मूल्य Code वैकल्पिक तर्क
एक-नमूना टी-परीक्षण एक सदिश का माध्य सैद्धांतिक माध्य से भिन्न होता है 0.05
t.test(x, mu = mean)
युग्मित नमूना टी-परीक्षण समान विषयों के लिए माध्य A, माध्य B से भिन्न है। 0.05
t.test(A, B, paired = TRUE)
var.equal = TRUE

यदि आप स्वतंत्र दो-नमूना परीक्षण में समान प्रसरण मानने को तैयार हैं, तो var.equal = TRUE सेट करें। सुरक्षित वेल्च सुधार चलाने के लिए इसे डिफ़ॉल्ट FALSE पर छोड़ दें।

अक्सर पूछे जाने वाले प्रश्न

युग्मित परीक्षण में एक ही व्यक्ति के दो बार माप लिए जाने पर उसके भीतर के अंतरों का विश्लेषण किया जाता है। स्वतंत्र परीक्षण दो अलग-अलग समूहों की तुलना करता है। युग्मित डेटा पर स्वतंत्र परीक्षण का उपयोग करने से कुछ जानकारी नष्ट हो जाती है और सांख्यिकीय शक्ति कम हो जाती है।

जब भी आपने समान प्रसरण की पुष्टि न की हो, तब वेल्च विधि का उपयोग करें, यही कारण है कि R इसे डिफ़ॉल्ट रूप से लागू करता है। प्रसरण मेल खाने पर यह लगभग कोई ऊर्जा खपत नहीं करता है और असंगत होने पर त्रुटि दर को सुरक्षित रखता है।

छोटे नमूनों के लिए, विल्कोक्स रैंक-सम या साइन्ड-रैंक परीक्षण (wilcox.test()) का उपयोग करें। बड़े नमूनों के लिए, केंद्रीय सीमा प्रमेय सामान्यता से मामूली विचलन के बावजूद टी-परीक्षण को विश्वसनीय बनाए रखता है।

टीमें समान क्रॉस-वैलिडेशन फोल्ड में दो मॉडलों की तुलना करने और यह निर्धारित करने के लिए युग्मित टी-परीक्षण का उपयोग करती हैं कि ए/बी प्रयोग का परिणाम वास्तविक है या नहीं। युग्मित डिज़ाइन तुलना से फोल्ड-दर-फोल्ड भिन्नता को हटा देता है।

जी हां। एआई सहायक स्वतंत्रता की डिग्री समझा सकते हैं, विश्वास अंतराल को सरल भाषा में अनुवाद कर सकते हैं और गलत विकल्प चुने जाने पर चेतावनी दे सकते हैं। प्रत्येक रीडिंग की पुष्टि अपने स्वयं के shapiro.test() और var.test() परिणामों से करें।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: