2013-06-20 26 views
6

Bir öğrenci t güven aralığı hesaplamak için python kullanarak ilgileniyorum.student t güven aralığı python

Ben Mathematica StudentTCI() işlevini kullanarak ve şimdi bu fonksiyonu kendim inşa, ama o atılmak önce nasıl oldukça emin değilim http://reference.wolfram.com/mathematica/HypothesisTesting/ref/StudentTCI.html

, bu piton aynı işlevi kod gerek am Python'da bir yerlerde işlev? Numpy gibi mi? (Numpy kullanmadım ve danışmanım mümkünse numpy kullanmamanızı tavsiye etti).

Bu sorunu çözmenin en kolay yolu ne olurdu? Kaynak kodunu StudentTCI() 'den numpy (varsa) kodumda işlev tanımı olarak kopyalayabilir miyim?

düzenleme: python kodu kullanarak Öğrenci TCI'sı oluşturmaya ihtiyacım var (eğer mümkünse). Scipy'yi kurmak bir çıkmaz haline geldi. Herkesin sahip olduğu aynı sorunu yaşıyorum ve kurmak için bu kadar uzun sürerse dağıttığım kod için Scipy'yi kullanmamın bir yolu yok.

Scipy sürümündeki algoritmanın kaynak koduna nasıl bakılacağını bilen var mı? Sanırım onu ​​bir python tanımına dönüştüreceğim.

cevap

11

Sana scipy.stats.t kullanabilirsiniz tahmin ve interval bir yöntem vardır: İstersen

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) 

Tabii, kendi işlevini yapabilirsiniz. en çok Mathematica nasıl göründüğünü yapalım:

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) 

Sonuç:

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

teşekkürler. İhtiyacım olan bu. Scipy (win7 64x) yüklemeye çalışıyorum ve olması gerektiği kadar basit değil mi? Ben 32 bit python kullanıyorum, bu yüzden 32 bit scipy istiyorum, ama nasıl elde edeceğimi bilmiyorum. Şu an anakconda diye bir şey kuruyorum. Aldığım scipy'yi kurmanın bir yolu yok mu? – SwimBikeRun

+0

Anaconda tamamlandı ve scipy yüklemedi. satır 29, içinde scipy.stats import t ImportError: scipy.stats adlı bir modül yok – SwimBikeRun

+0

@SwimBikeRun, [Enthought Canopy] (https://www.enthought.com/products/canopy/) öğesini yüklemenizi öneririm. Python paketlerini kurmak ve yönetmek için kolay ve anlaşılır bir yol sağlar. Scipy Express sürümüne dahil edilmiştir, bu yüzden bunun için ödeme yapmanız gerekmez. Ayrıca scipy ile birlikte gelen [pythonxy] (https://code.google.com/p/pythonxy/) de var, ama hiç kullanmadım. – abudis