दूसरी चीज यह दिखती है कि यह x+y < 20
मामले के लिए इस्तेमाल की जा रही गणना के लिए एक अनुमान है , लेकिन स्टर्लिंग के अनुमान के आधार पर ।
आम तौर पर जब इसका उपयोग इस प्रकार के सन्निकटन के लिए किया जा रहा है, तो लोग कम से कम अगले अतिरिक्त शब्द (के कारक) का उपयोग करेंगे 2 πn---√ के लिए सन्निकटन में n !), जो छोटे के लिए सापेक्ष सन्निकटन में काफी सुधार करेगा n।
उदाहरण के लिए, यदि एक्स तथा y दोनों 10 हैं, पहली गणना 0.088 के बारे में देती है जबकि सन्निकटन जब कारक होता है 2 πn---√सभी शब्दों में शामिल है, लगभग ०.०, ९ के बारे में है, जो अधिकांश उद्देश्यों के लिए पर्याप्त है ... लेकिन सन्निकटन में उस शब्द को छोड़ने से ०.५ मिलता है - जो वास्तव में पर्याप्त नहीं है! उस समारोह के लेखक ने स्पष्ट रूप से सीमा मामले में अपने अनुमान की सटीकता की जांच करने की जहमत नहीं उठाई।
इस प्रयोजन के लिए, लेखक को संभवतः बिल्ट इन lgamma
फंक्शन को बुलाया जाना चाहिए - विशेष रूप से, इसके लिए इसके बजाय इसका उपयोग करके log_p1
:
log_p1 <- lgamma(x+y+1)-lgamma(x+1)-lgamma(y+1)-(x+y+1)*log(2)
जिसके परिणामस्वरूप वह जवाब देने की कोशिश कर रहा है जो लगभग अनुमानित है (क्योंकि lgamma(x+1)
वास्तव में वापस आता हैलॉग( x ! )(स्टर्लिंग इम्प्लांटेशन के माध्यम से - वह बहुत ही खराब चीज - लगभग - खराब - कोशिश कर रहा है)।
इसी तरह, मुझे यकीन नहीं है कि लेखक choose
पहले भाग में निर्मित फ़ंक्शन का उपयोग क्यों नहीं करता है , एक फ़ंक्शन जो आर के मानक वितरण में आता है। उस मामले के लिए, प्रासंगिक वितरण फ़ंक्शन शायद अंतर्निहित भी है।
आपको वास्तव में दो अलग-अलग मामलों की आवश्यकता नहीं है; lgamma
एक ठीक सही छोटी से छोटी मूल्यों के नीचे काम करता है। दूसरी ओर, choose
फ़ंक्शन बहुत बड़े मूल्यों के लिए choose(1000,500)
काम करता है (जैसे ठीक काम करता है)। सुरक्षित विकल्प शायद lgamma
ही आप काफी बड़ी राशि की जरूरत होगी,एक्स तथा y इससे पहले कि यह एक मुद्दा था।
अधिक जानकारी के साथ परीक्षण के स्रोत की पहचान करना संभव होना चाहिए। मेरा अनुमान है कि लेखक ने इसे कहीं से लिया है, इसलिए इसे नीचे ट्रैक करना संभव होना चाहिए। क्या आपके पास इसके लिए कुछ संदर्भ है?
जब आप कहते हैं 'ऑप्टिमाइज़' करते हैं तो क्या आपका मतलब है कि यह तेज़, छोटा, अधिक रख-रखाव या कुछ और है?
कागज पर जल्दी से पढ़ने के बाद संपादित करें:
लेखक कई बिंदुओं पर गलत प्रतीत होते हैं। फिशर का सटीक परीक्षण यह नहीं तय करता है कि मार्जिन तय हो गया है, यह केवल उन पर स्थितियां हैं, जो कि एक ही चीज नहीं है, जैसा कि चर्चा की जाती है, उदाहरण के लिए, यहां , संदर्भों के साथ। वास्तव में, वे मार्जिन पर कंडीशनिंग पर बहस से बहुत अधिक पूरी तरह से अनभिज्ञ लगते हैं और ऐसा क्यों किया जाता है। वहाँ के लिंक पढ़ने लायक हैं।
[वे 'फिशर के परीक्षण से हमेशा आगे बढ़ते हैं कि हमारा' इस दावे के लिए है कि फिशर का परीक्षण बहुत रूढ़िवादी है ... जो जरूरी नहीं है कि जब तक यह शर्त के लिए गलत न हो । उन्हें यह स्थापित करना होगा, लेकिन यह देखते हुए कि यह कुछ सांख्यिकीविद् लगभग 80 वर्षों से बहस कर रहे हैं, और ये लेखक इस बात से अनजान हैं कि कंडीशनिंग क्यों की जाती है, मुझे नहीं लगता कि ये लोग उस मुद्दे की तह तक गए हैं ।]
पेपर के लेखक कम से कम यह समझने लगते हैं कि वे जो संभावनाएँ देते हैं, उन्हें पी-वैल्यू देने के लिए कम्युलेट किया जाना चाहिए; उदाहरण के लिए पृष्ठ 5 (जोर मेरा) के पहले कॉलम के बीच में:
इस तरह के परिणाम के लिए फिशर के सटीक परीक्षण के अनुसार सांख्यिकीय महत्व 4.6% है (दो-पूंछ पी-मूल्य, यानी, इस तरह की तालिका की परिकल्पना में होने की संभावना है कि एक्टिन ईएसटी आवृत्तियों सीडीएनए पुस्तकालयों से स्वतंत्र हैं)। इसकी तुलना में,
समीकरण 2 के संचयी रूप (समीकरण 9, देखें तरीके) से गणना की गई पी (मान ) एक्टिन ईएसटी के सापेक्ष आवृत्ति के लिए दोनों पुस्तकालयों में समान हैं, यह देखते हुए कि कम से कम 11 संज्ञानात्मक ईएसटी में मनाया जाता है। मस्तिष्क पुस्तकालय में दो के बाद जिगर पुस्तकालय) 1.6% है।
(हालांकि मुझे यकीन नहीं है कि मैं वहां उनके मूल्य की गणना से सहमत हूं; मुझे यह देखने के लिए सावधानी से जांचना होगा कि वे वास्तव में दूसरी पूंछ के साथ क्या कर रहे हैं।)
मुझे नहीं लगता कि कार्यक्रम ऐसा करता है।
खबरदार, तथापि, कि उनके विश्लेषण है नहीं एक मानक द्विपद परीक्षण; वे बेइज़ियन तर्क का उपयोग करते हैं अन्यथा अन्यथा परीक्षण में पी-मान प्राप्त करते हैं। वे भी लगते हैं - कुछ अजीब तरह से, मेरे मन को - शर्त परएक्स, बजाय x + y। इसका मतलब यह है कि उन्हें एक द्विपद के बजाय एक नकारात्मक द्विपद की तरह कुछ के साथ समाप्त होना चाहिए , लेकिन मुझे लगता है कि कागज वास्तव में बुरी तरह से संगठित और बुरी तरह से समझाया गया है (और मैं आंकड़ों के कागजात में क्या चल रहा है) का उपयोग करने के लिए उपयोग किया जाता है, इसलिए मैं हूं जब तक मैं ध्यान से नहीं जाऊंगा, तब तक कुछ निश्चित नहीं होगा।
मुझे भी यकीन नहीं है कि इस बिंदु पर उनकी संभावनाओं का योग 1 है।
यहां बहुत कुछ कहा जा सकता है, लेकिन प्रश्न कागज के बारे में नहीं है, यह कार्यक्रम के कार्यान्वयन के बारे में है।
-
वैसे भी, अपशॉट है, कम से कम कागज सही ढंग से पहचानता है कि पी-मान समीकरण 2 में उन जैसी संभावनाओं का योग है, लेकिन कार्यक्रम नहीं करता है । (पेपर के मेथड्स सेक्शन में eqn 9a और 9b देखें।)
उस पर कोड बस गलत है।
[आप उपयोग कर सकते हैं pbinom
, जैसा कि @ व्हिबर की टिप्पणी का अर्थ होगा, व्यक्तिगत संभावनाओं को पूरा करने के लिए (लेकिन पूंछ नहीं, क्योंकि यह एक द्विपद परीक्षण नहीं है क्योंकि वे इसे संरचना करते हैं) लेकिन फिर उनके समीकरण 2 में 1/2 का एक अतिरिक्त कारक है यदि आप पेपर में परिणाम दोहराना चाहते हैं, तो आपको उन्हें बदलने की आवश्यकता है।]
आप इसे प्राप्त कर सकते हैं, कुछ लकीर पीटने के साथ pnbinom
-
नकारात्मक द्विपद के सामान्य रूप या तो परीक्षणों की संख्या हैं कटी एचसफलता या की संख्या विफलताओं कोकटी एचसफलता। दो बराबर हैं; विकिपीडिया यहाँ दूसरा रूप देता है । प्रायिकता कार्य है:
(के + आर - १क) ⋅(1-पी)आरपीक,
P4 पर समीकरण 2 (और इसलिए p3 पर eqn 1 भी) एक नकारात्मक द्विपद है, लेकिन 1. Let द्वारा स्थानांतरित कर दिया गया हैपी =एन1/ (एन1+एन2), के = एक्स तथा र = य+ 1।
यह मुझे चिंतित करता है कि सीमा के बाद से y समान रूप से स्थानांतरित नहीं किया गया है, कि उनकी संभावनाएं 1 भी नहीं जोड़ सकती हैं।
यह बुरा होगा।
p2
; के छोटेp1
और क्रमशःp2
के छोटे से मेल खाती हैx
औरy
- यह एक अक्षमता है। एक संभावित बग यह है कि सशर्त की दूसरी शाखाp2
सभी पर गणना करने में विफल रहती है और केवल उपयोग करती हैp1
। मुझे यह भी संदेह है कि कोड पूरी तरह से गलत हो सकता है, क्योंकि यह पी-मूल्य की गणना करने के लिए प्रकट नहीं होता है: यह सिर्फ एक-आधा द्विपद संभावना है और शायद एक पूंछ संभावना होना चाहिए । क्यों नहीं बस उपयोगpbinom
/dbinom
और इसके साथ किया जा सकता है?