2013-07-09 20 views
18

Tôi có một số giá trị t và mức độ tự do và muốn tìm các giá trị p từ chúng (đó là hai đuôi). Trong thế giới thực, tôi sẽ sử dụng một bảng kiểm tra t ở mặt sau của một cuốn sách giáo khoa thống kê; làm thế nào để làm tương đương trong Python?Giá trị p tr.bình từ t-thống kê

ví dụ:

t-lookup(5, 7) = 0.04156 hoặc một cái gì đó như thế (số làm-up).

Tôi biết trong SciPy nếu tôi có mảng tôi có thể làm scipy.stats.ttest_ind, nhưng tôi thì không. Tôi chỉ có t-thống kê và mức độ tự do.

+0

Có lẽ bảng thống kê tồn tại để thuận tiện thay vì phải tính các giá trị đó từ phương trình. Do đây là một chương trình máy tính, tại sao không sử dụng phương trình đó trực tiếp? – dilbert

+0

Nó khá phức tạp. Tôi hy vọng có một số phương pháp ở đâu đó trong một số thư viện có thể làm điều đó cho tôi. –

Trả lời

23

Từ http://docs.scipy.org/doc/scipy/reference/tutorial/stats.html

Như một bài tập, chúng ta có thể tính toán Hàm TTEST của chúng tôi cũng trực tiếp mà không sử dụng chức năng cung cấp, mà sẽ cho ta câu trả lời giống nhau, và vì vậy nó làm:

tt = (sm-m)/np.sqrt(sv/float(n)) # t-statistic for mean 
pval = stats.t.sf(np.abs(tt), n-1)*2 # two-sided pvalue = Prob(abs(t)>tt) 
print 't-statistic = %6.3f pvalue = %6.4f' % (tt, pval) 
t-statistic = 0.391 pvalue = 0.6955 
+0

Tại sao họ gọi nó (stats.t.sf) một chức năng sống sót? Nó thực sự giống như https://en.wikipedia.org/wiki/Survival_function – wordsforthewise

Các vấn đề liên quan