基于python實現計算兩組數據P值
我們在做A/B試驗評估的時候需要借助p_value,這篇文章記錄如何利用python計算兩組數據的顯著性。
一、代碼
# TTest.py# -*- coding: utf-8 -*-’’’# Created on 2020-05-20 20:36# TTest.py# @author: huiwenhua’’’## Import the packagesimport numpy as npfrom scipy import statsdef get_p_value(arrA, arrB): a = np.array(arrA) b = np.array(arrB) t, p = stats.ttest_ind(a,b) return pif __name__ == '__main__': get_p_value([1, 2, 3, 5, ], [6, 7, 8, 9, 10])
二、T檢驗:兩樣本T檢驗
兩樣本t檢驗是比較兩個樣本所代表的兩個總體均值是否存在顯著差異。除了要求樣本來自正態分布,還要求兩個樣本的總體方差相等也就是“方差齊性”。
檢驗原假設:樣本均值無差異(μ=μ0)
Python命令stats.ttest_ind(data1,data2)
當不確定兩總體方差是否相等時,應先利用levene檢驗檢驗兩總體是否具有方差齊性stats.levene(data1,data2)如果返回結果的p值遠大于0.05,那么我們認為兩總體具有方差齊性。如果兩總體不具有方差齊性,需要加上參數equal_val并設定為False,如下。
stats.ttest_ind(data1,data2,equal_var=False) // TTest中默認是具有方差齊性
三、結果解釋
當p值小于某個顯著性水平α(比如0.05)時,則認為樣本均值存在顯著差異,具體的分析要看所選擇的是雙邊假設還是單邊假設(又分小于和大于)注意stats.ttest_ind進行雙側檢驗。
當t值大于0,則有((1-p)* 100)%的把握認為認為第一組數據好與第二組數據。例如p=0.05,那么我們有95%的把握認為第一組數據好于第二組數據。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。
相關文章:
1. css代碼優化的12個技巧2. .NET SkiaSharp 生成二維碼驗證碼及指定區域截取方法實現3. jsp網頁實現貪吃蛇小游戲4. CentOS郵件服務器搭建系列—— POP / IMAP 服務器的構建( Dovecot )5. MyBatis JdbcType 與Oracle、MySql數據類型對應關系說明6. 在JSP中使用formatNumber控制要顯示的小數位數方法7. 存儲于xml中需要的HTML轉義代碼8. ASP中實現字符部位類似.NET里String對象的PadLeft和PadRight函數9. ASP中if語句、select 、while循環的使用方法10. ASP基礎入門第八篇(ASP內建對象Application和Session)
