p-values

Python में Hypothesis Testing

James Chapman

Curriculum Manager, DataCamp

आपराधिक मुकदमे

  • दो संभावित वास्तविक स्थितियाँ:
    1. अभियुक्त ने अपराध किया
    2. अभियुक्त ने अपराध नहीं किया
  • दो संभावित फैसले:
    1. दोषी
    2. निर्दोष
  • शुरुआत में अभियुक्त को निर्दोष माना जाता है
  • दोषसिद्धि के लिए अभियोजन को "उचित संदेह से परे" साक्ष्य देने होंगे
Python में Hypothesis Testing

पहले प्रोग्रामिंग अनुभव की उम्र

  • age_first_code_cut बताता है कि Stack Overflow यूज़र ने पहली बार प्रोग्रामिंग कब शुरू की
    • "adult" मतलब 14 या उससे अधिक उम्र में शुरू किया
    • "child" मतलब 14 से पहले शुरू किया
  • पिछले शोध: 35% सॉफ्टवेयर डेवलपर्स ने बचपन में प्रोग्रामिंग शुरू की
  • क्या डेटा साइंटिस्ट्स में बचपन में शुरू करने वालों का अनुपात अधिक है?
Python में Hypothesis Testing

परिभाषाएँ

एक hypothesis किसी अज्ञात population पैरामीटर के बारे में कथन है

hypothesis test दो प्रतिस्पर्धी परिकल्पनाओं की जाँच है

  • null hypothesis ($H_{0}$) मौजूदा धारणा है

  • alternative hypothesis ($H_{A}$) शोधकर्ता का नया "चैलेंजर" विचार है

हमारी समस्या के लिए:

  • $H_{0}$: बचपन में प्रोग्रामिंग शुरू करने वाले डेटा साइंटिस्ट्स का अनुपात 35% है
  • $H_{A}$: यह अनुपात 35% से अधिक है
1 "Naught" ब्रिटिश अंग्रेज़ी में "zero" के लिए है. ऐतिहासिक कारणों से, null hypothesis के उच्चारण हेतु "H-naught" अंतरराष्ट्रीय प्रचलन है.
Python में Hypothesis Testing

आपराधिक मुकदमे बनाम hypothesis testing

  • $H_{A}$ या $H_{0}$ में से एक सत्य है (दोनों नहीं)
  • शुरुआत में $H_{0}$ को सत्य माना जाता है
  • परीक्षण का नतीजा होता है: "$H_{0}$ खारिज" या "$H_{0}$ खारिज करने में विफल"
  • यदि सैंपल से साक्ष्य "significant" हो कि $H_{A}$ सत्य है, तो $H_{0}$ खारिज करें, वरना $H_{0}$ चुनें

Significance level परिकल्पना परीक्षण में "उचित संदेह से परे" की सीमा है

Python में Hypothesis Testing

One-tailed और two-tailed परीक्षण

मानक नॉर्मल वितरण के pdf का डेंसिटी प्लॉट, जिसमें बाएँ और दाएँ टेल लाल रंग में हाइलाइट हैं.

Hypothesis tests जाँचते हैं कि sample statistics null distribution के टेल्स में पड़ते हैं या नहीं

Test Tails
alternative different from null two-tailed
alternative greater than null right-tailed
alternative less than null left-tailed

 

$H_{A}$: बचपन में प्रोग्रामिंग शुरू करने वाले डेटा साइंटिस्ट्स का अनुपात 35% से अधिक है

यह right-tailed परीक्षण है

Python में Hypothesis Testing

p-values

p-values: null hypothesis सत्य मानते हुए किसी परिणाम के मिलने की probability

  • बड़ा p-value, $H_{0}$ के लिए बड़ा समर्थन
    • स्टैटिस्टिक शायद null distribution के टेल में नहीं है
  • छोटा p-value, $H_{0}$ के विरुद्ध मजबूत साक्ष्य
    • स्टैटिस्टिक शायद null distribution के टेल में है
  • p-value में "p" → probability
  • "छोटा" मतलब "zero के क़रीब"
Python में Hypothesis Testing

z-score की गणना

prop_child_samp = (stack_overflow['age_first_code_cut'] == "child").mean()
0.39141972578505085
prop_child_hyp = 0.35
std_error = np.std(first_code_boot_distn, ddof=1)
0.010351057228878566
z_score = (prop_child_samp - prop_child_hyp) / std_error
4.001497129152506
Python में Hypothesis Testing

p-value की गणना

  • norm.cdf() scipy.stats की normal CDF है.
  • Left-tailed test → norm.cdf() उपयोग करें.
  • Right-tailed test → 1 - norm.cdf() उपयोग करें.

 

from scipy.stats import norm
1 - norm.cdf(z_score, loc=0, scale=1)
3.1471479512323874e-05
Python में Hypothesis Testing

अभ्यास करते हैं!

Python में Hypothesis Testing

Preparing Video For Download...