शुरू करेंमुफ़्त में शुरू करें

Binomial और Poisson वितरणों के बीच संबंध

आपने अभी सुना कि दुर्लभ घटनाओं के लिए Poisson वितरण, Binomial वितरण की एक सीमा (limit) है. अगर आप दोनों की कहानियों के बारे में सोचें, तो यह बात समझ में आती है. मान लीजिए हम एक घंटे तक हर मिनट एक Bernoulli ट्रायल करते हैं, और हर बार सफलता की प्रायिकता 0.1 है. हम 60 ट्रायल करेंगे, सफलताओं की संख्या Binomial रूप से वितरित होगी, और हमें औसतन लगभग 6 सफलताएँ मिलने की उम्मीद होगी. यह वैसा ही है जैसा हमने वीडियो में Poisson की कहानी में देखा था, जहाँ हमें प्रति घंटे किसी वेबसाइट पर औसतन 6 हिट मिलती हैं. इसलिए, आगमन दर \(np\) वाला Poisson वितरण, \(n\) Bernoulli ट्रायल्स और सफलता की प्रायिकता \(p\) वाले Binomial वितरण का अनुमान (approximation) देता है (जब \(n\) बड़ा और \(p\) छोटा हो). महत्वपूर्ण बात यह है कि Poisson वितरण के साथ काम करना अक्सर सरल होता है, क्योंकि इसमें Binomial की तरह दो नहीं, केवल एक पैरामीटर होता है.

आइए, इन दोनों वितरणों को कंप्यूटेशनल तरीके से जाँचते हैं. आप 10 की आगमन दर वाले Poisson वितरण से सैंपल्स लेकर उनका mean और standard deviation निकालेंगे. फिर, आप ऐसे \(n\) और \(p\) पैरामीटर वाले Binomial वितरण से सैंपल्स लेकर उनका mean और standard deviation निकालेंगे जिनके लिए \(np = 10\) हो.

यह अभ्यास पाठ्यक्रम का हिस्सा है

Statistical Thinking in Python (Part 1)

पाठ्यक्रम देखें

अभ्यास निर्देश

  • rng.poisson() फंक्शन का उपयोग करके, mean 10 वाले Poisson वितरण से 10000 सैंपल खींचें.
  • Binomial वितरण के लिए विचार करने हेतु n और p के मानों की सूची बनाएँ. ऐसे चुनें: n = [20, 100, 1000] और p = [0.5, 0.1, 0.01] ताकि हर बार \(np = 10\) रहे.
  • दिए गए for लूप के अंदर rng.binomial() का उपयोग करते हुए, प्रत्येक n, p जोड़ी के लिए Binomial वितरण से 10000 सैंपल खींचें और सैंपल्स का mean और standard deviation प्रिंट करें. कुल 3 n, p जोड़ियाँ हैं: 20, 0.5, 100, 0.1, और 1000, 0.01. लूप के अंदर इन्हें n[i], p[i] के रूप में एक्सेस किया जा सकता है.

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

# Draw 10,000 samples out of Poisson distribution: samples_poisson


# Print the mean and standard deviation
print('Poisson:     ', np.mean(samples_poisson),
                       np.std(samples_poisson))

# Specify values of n and p to consider for Binomial: n, p



# Draw 10,000 samples for each n,p pair: samples_binomial
for i in range(3):
    samples_binomial = ____

    # Print results
    print('n =', n[i], 'Binom:', np.mean(samples_binomial),
                                 np.std(samples_binomial))
कोड संपादित करें और चलाएँ