2013-06-20 2 views
6

में छात्र टी आत्मविश्वास अंतराल मैं छात्र टी से आत्मविश्वास अंतराल की गणना करने के लिए अजगर का उपयोग करने में रूचि रखता हूं।पाइथन

मैं Mathematica में StudentTCI() फ़ंक्शन का उपयोग कर रहा है और अब अजगर में एक ही समारोह कोड करने के लिए http://reference.wolfram.com/mathematica/HypothesisTesting/ref/StudentTCI.html

मैं काफी यकीन है कि कैसे इस समारोह अपने आप का निर्माण करने के लिए, लेकिन इससे पहले कि मैं उस पर शुरू नहीं कर रहा हूँ, यह है की जरूरत है कहीं पाइथन में काम? Numpy की तरह? (मैंने numpy का उपयोग नहीं किया है और मेरे सलाहकार ने यदि संभव हो तो numpy का उपयोग न करने की सलाह दी)।

इस समस्या को हल करने का सबसे आसान तरीका क्या होगा? क्या मैं फ़ंक्शन परिभाषा के रूप में अपने कोड में numpy (यदि यह मौजूद है) में StudentTCI() से स्रोत कोड कॉपी कर सकता हूं?

संपादित करें: मुझे पाइथन कोड (यदि संभव हो) का उपयोग कर छात्र टीसीआई बनाने की आवश्यकता होगी। Scipy स्थापित करना एक मृत अंत में बदल गया है। मुझे वही समस्या है जो हर किसी के पास है, और अगर मैं इसे स्थापित करने में लंबा समय लगता हूं तो मुझे वितरित कोड के लिए Scipy की आवश्यकता नहीं है।

कोई भी जानता है कि scipy संस्करण में एल्गोरिदम के लिए स्रोत कोड कैसे देखें? मैं सोच रहा हूं कि मैं इसे एक अजगर परिभाषा में दोबारा कर दूंगा।

उत्तर

11

मैं तुम्हें scipy.stats.t इस्तेमाल कर सकते हैं लगता है और यह interval विधि है:

In [1]: from scipy.stats import t 
In [2]: t.interval(0.95, 10, loc=1, scale=2) # 95% confidence interval 
Out[2]: (-3.4562777039298762, 5.4562777039298762) 
In [3]: t.interval(0.99, 10, loc=1, scale=2) # 99% confidence interval 
Out[3]: (-5.338545334351676, 7.338545334351676) 

ज़रूर, आप अपने खुद के समारोह यदि आप चाहें तो कर सकते हैं। यह Mathematica में की तरह लग रहे करते हैं:

from scipy.stats import t 


def StudentTCI(loc, scale, df, alpha=0.95): 
    return t.interval(alpha, df, loc, scale) 

print StudentTCI(1, 2, 10) 
print StudentTCI(1, 2, 10, 0.99) 

परिणाम:

(-3.4562777039298762, 5.4562777039298762) 
(-5.338545334351676, 7.338545334351676) 
+0

धन्यवाद। मुझे इसकी ही आवश्यकता थी। मैं scipy (win7 64x) स्थापित करने की कोशिश कर रहा हूँ, और यह उतना सीधा नहीं है जितना होना चाहिए ?? मैं 32 बिट पायथन का उपयोग कर रहा हूं इसलिए मुझे विश्वास है कि मैं 32 बिट scipy भी चाहता हूं, लेकिन मुझे यकीन नहीं है कि इसे कैसे प्राप्त किया जाए। मैं अभी एनाकोंडा नामक एक चीज़ स्थापित कर रहा हूं, जो मुझे लगता है कि काम पूरा करना चाहिए? बस इसे स्थापित करने के लिए कोई रास्ता नहीं है? – SwimBikeRun

+0

एनाकोंडा किया जाता है, और यह scipy स्थापित नहीं किया था। लाइन 2 9, से scipy.stats आयात t आयात त्रुटि: scipy.stats नामक कोई मॉड्यूल नहीं – SwimBikeRun

+0

@SwimBikeRun, मेरा सुझाव है कि आप [Enthought Canopy] (https://www.enthought.com/products/canopy/) इंस्टॉल करें। यह पाइथन पैकेज को स्थापित और प्रबंधित करने का एक आसान और सीधा तरीका प्रदान करता है। Scipy एक्सप्रेस संस्करण में शामिल है, तो आप इसके लिए भुगतान नहीं करना है। वहाँ भी है [pythonxy] (https://code.google.com/p/pythonxy/) जो scipy के साथ आता है, लेकिन मैंने वास्तव में इसका कभी भी उपयोग नहीं किया। – abudis