白話“卡方檢驗”
什么是“卡方檢驗”?
卡方檢驗是假設(shè)檢驗的一種撑毛,用于分析兩個類別變量的相關(guān)關(guān)系书聚,是一種非參數(shù)假設(shè)檢驗,得出的結(jié)論無非就是“兩個變量相關(guān)”或者“兩個變量”不相關(guān)藻雌,所以有的教材上又叫“獨立性檢驗”雌续。如果不是很清楚“假設(shè)檢驗”的朋友們,就要好好翻一下本科階段《概率論與數(shù)理統(tǒng)計》的教材了胯杭。
關(guān)于假設(shè)檢驗的關(guān)鍵字有:總體驯杜、樣本、點估計做个、區(qū)間估計鸽心、顯著性水平、置信區(qū)間居暖、統(tǒng)計量顽频、樞軸量、分位點太闺、三大分布糯景、中心極限定理(明確正態(tài)分布的重要地位)、抽樣分布定理省骂。
如果這些關(guān)鍵字你還比較生疏的話蟀淮,可以翻翻本科的《概率論與數(shù)理統(tǒng)計》教材,在“數(shù)理統(tǒng)計”部分冀宴,你可以找到它們灭贷。
卡方檢驗在做什么?
卡方檢驗用于分析兩個類別變量的相關(guān)關(guān)系略贮。
它的流程基本是這樣的:我感覺變量 A 和變量 B 存在相關(guān)關(guān)系,于是我提出假設(shè)“變量 A 和變量 B 存在相關(guān)關(guān)系”仗岖,然后我要用嚴(yán)格的數(shù)學(xué)方法證明“變量 A 和變量 B 存在相關(guān)關(guān)系”這個假設(shè)成立逃延。
- 什么是“類別變量”?
類別變量就是取值為離散值的變量轧拄,“性別”就是一個類別變量揽祥,它的取值只有“男”和“女”,類似還有”婚否“檩电、”國籍“等拄丰。
- 什么是“分析兩個類別變量的相關(guān)關(guān)系”府树?
以我們熟知的 Kaggle 平臺上的泰坦尼克號幸存者預(yù)測提供的數(shù)據(jù)為例,”性別“對于”是否幸存“的關(guān)系研究料按,就屬于這方面的內(nèi)容奄侠。研究表明,泰坦尼克號上的乘客秉承”女士優(yōu)先载矿,照顧弱勢群體“的基本原則垄潮,因此女性幸存的概率比男性要大,這就說明闷盔,”性別“對于”是否幸存“有相關(guān)關(guān)系弯洗,我們后面會使用卡方檢驗來驗證這一事實。
假設(shè)檢驗是什么逢勾?
假設(shè)檢驗牡整,顧名思義,就是提出一個假設(shè)溺拱,然后檢驗?zāi)闾岢龅募僭O(shè)是否正確逃贝。假設(shè)檢驗的流程其實是固定的,關(guān)鍵其實在于理解假設(shè)檢驗的設(shè)計原則盟迟。
這里說一句題外話秋泳,“提出假設(shè),然后證明假設(shè)”其實我們一點都不陌生攒菠,人類探索未知事物迫皱、真理用的都是這個思路。聰明的祖先根據(jù)經(jīng)驗和直覺辖众,提出一個猜想卓起,然后再用嚴(yán)格的理論去論證這個猜想,例如我們熟知的“萬有引力定律”凹炸、“地球是圓的”戏阅,這些說法剛剛提出來的時候,就只是科學(xué)家們的猜想啤它,隨后(很可能是很久很久以后)奕筐,才被證明他們的猜想是正確的、偉大的变骡。只不過在統(tǒng)計學(xué)中离赫,“提出猜想”叫“提出假設(shè)”,“證明猜想”叫“檢驗”塌碌。
假設(shè)什么渊胸?
那么我們假設(shè)什么呢?這里就要引入“原假設(shè)”和“備擇假設(shè)”的概念了台妆◆崦停“原假設(shè)”是“備擇假設(shè)”的對立面胖翰。
下面這個原則很重要:
備擇假設(shè)通常是研究者想收集證據(jù)予以支持的假設(shè);
原假設(shè)是研究者想收集證據(jù)予以推翻的假設(shè)切厘。
重要的事情萨咳,我再寫兩遍:如果你想通過種種論證,證明一件事情迂卢,就要把這件事情寫成“備擇假設(shè)”某弦。<b><font size='3' color='ff0000'>備擇假設(shè)通常用于表達(dá)研究者自己傾向于支持的看法(這很主觀),然后就是想辦法收集證據(jù)拒絕原假設(shè)而克,以支持備擇假設(shè)</font></b>靶壮。
特別要說明的一點是:如果你不遵守這個“原假設(shè)”和“備擇假設(shè)”設(shè)計的基本原則,你很可能會得到相反的結(jié)論员萍。
假設(shè)檢驗很像司法界對于一個事實的認(rèn)定腾降,本著“疑罪從無”的原則苛谷,如果你要說明一個人有罪龄寞,你必須提供充足的證據(jù)度硝,否則被告人的罪名就不能成立扮授,這個說法叫“沒有充分的證據(jù)證明被告有罪”。
因此哩都,如果我們最后的結(jié)論是“原假設(shè)”成立,我們一般不這么說塞绿,即我們不說“原假設(shè)”成立雷猪,我們不說“原假設(shè)”是真的矾削。我們說不能拒絕“原假設(shè)”著拭,或者說沒有充分的證據(jù)拒絕“原假設(shè)”,或者說沒有充分的證據(jù)證明“備擇假設(shè)”成立设拟。
卡方檢驗的“原假設(shè)”與“備擇假設(shè)”
因為我們做假設(shè)檢驗一定是覺得兩個類別變量有關(guān)系,才去做檢驗骑素。再想想那個“疑罪從無”原則,我們是覺得一個人有罪光督,才去舉證阳距。因此卡方檢驗的“原假設(shè)”一定是假設(shè)獨立,“備擇假設(shè)”一定是假設(shè)相關(guān)结借,即:
原假設(shè):類別變量 與類別變量 獨立筐摘;
備擇假設(shè):類別變量 與類別變量 不獨立 。
這一點是極其重要且明確的,請你一定記住它咖熟,在統(tǒng)計軟件中都是這樣設(shè)定的圃酵。
原假設(shè)是兩個類別變量獨立。
原假設(shè)是兩個類別變量獨立馍管。
原假設(shè)是兩個類別變量獨立郭赐。
如何檢驗?
做“檢驗”這件事情确沸,就很像我們以前做的“反證法”捌锭,我們假定要證明的結(jié)論的對立面成立,然后推出矛盾罗捎,即說明了我們的假設(shè)是錯誤的观谦,即原命題成立。請看下面這個例子:
請你證明:這個餐廳的菜很難吃桨菜。
證明:假設(shè)這個餐廳的菜很好吃豁状,那么周末的晚上生意一定很好,然而實際觀察下來倒得,顧客流量和平時一樣泻红,推出矛盾,所以假設(shè)不成立屎暇,即這個餐廳的菜很難吃承桥。
用假設(shè)檢驗的思路,在這個例子中:
原假設(shè):這個餐廳的菜很好吃根悼;
備擇假設(shè):這個餐廳的菜很難吃凶异。
我們把傾向于要證明的結(jié)論設(shè)置為“備擇假設(shè)”,而推理是基于“原假設(shè)”成立進(jìn)行的挤巡,推理得出矛盾剩彬,說明“原假設(shè)”錯誤,從錯誤的起點推出了錯誤的結(jié)論矿卑,因此“原假設(shè)”不成立喉恋,這就是假設(shè)檢驗里面說的“拒絕原假設(shè)”。
因此母廷,檢驗其實很簡單轻黑,就是一個是非論證的過程,是單選題琴昆,只有兩個選項氓鄙,選擇其一。
假設(shè)檢驗如何論證业舍?
假設(shè)檢驗的論證流程其實是固定的抖拦。論證依據(jù)的事實是“小概率事件在一次試驗中幾乎不可能發(fā)生”升酣,通常,我們得到的矛盾就在于:通過計算統(tǒng)計量态罪,發(fā)現(xiàn)通過一次試驗得到這個統(tǒng)計量是一個“小概率事件”噩茄,“小概率事件”在一次試驗中,居然發(fā)生了复颈,我們就認(rèn)為這是很“詭異”的绩聘,一定是之前的某個環(huán)節(jié)出了問題,即“原假設(shè)”不成立券膀,于是拒絕“原假設(shè)”君纫,即證明了“備擇假設(shè)”成立。
為什么叫“卡方檢驗”芹彬?
“卡方檢驗”即利用“卡方分布”去做“假設(shè)檢驗”。
什么是“卡方分布”叉庐?
“卡方分布”(也寫作 “分布”)是統(tǒng)計學(xué)領(lǐng)域的三大分布之一舒帮,另外兩個分布是“ 分布”與“ 分布”,這些分布都是由正態(tài)分布推導(dǎo)出來的陡叠,可以認(rèn)為它們是我們熟知的分布玩郊,因為它們可以取哪些值,以及取這些值的概率都是完全弄清楚了的枉阵。
注:忘記了三大分布的朋友們译红,請一定要翻翻自己本科的教材,看看這些分布用來做什么兴溜?為什么出現(xiàn)在“數(shù)理統(tǒng)計”中侦厚,理解使用這些分布是為了從樣本中估計總體的信息。
統(tǒng)計學(xué)的研究任務(wù)是通過樣本研究總體拙徽,因為我們無法把所有的總體都做一次測試刨沦,一般可行的做法就是從總體中抽取一部分?jǐn)?shù)據(jù),根據(jù)對這一部分?jǐn)?shù)據(jù)的研究膘怕,推測總體的一些性質(zhì)想诅。
而“三大分布”就是我們研究樣本的時候選取的參照物。一般我們研究的思路是這樣的:如果經(jīng)過分析岛心,得出待研究的樣本符合這些我們已知的分布之一来破,因為三大分布是被我們的統(tǒng)計學(xué)家完全研究透了的,可以認(rèn)為是無比正確的忘古,就可以通過查表得到這些分布的信息徘禁,進(jìn)而得到樣本的一些性質(zhì),幫助我們決策存皂。
這里舉一個例子晌坤,比如你是一個面試官逢艘,你手上掌握著“北京”、“上褐璨ぃ”它改、“廣州”三個省市的人才信息庫,來了一個面試者商乎,從簡歷中得知這個人來自“北京”央拖,那么我們就可以直接從“北京”市的人才信息庫中查閱到他的詳細(xì)履歷,掌握到他更全面的信息鹉戚。
上面提到的“北京”鲜戒、“上海”抹凳、“廣州” 這 3 個城市的人才信息庫遏餐,就相當(dāng)于統(tǒng)計學(xué)中的三大分布,你不用記住它赢底,你不用隨身攜帶它失都,但是你可以查閱它,它會告訴你你想知道的信息幸冻。
做假設(shè)檢驗的時候粹庞,我們也是類似的思路,我們需要利用總體的樣本構(gòu)造出合適的統(tǒng)計量(或樞軸量)洽损,并使其服從或近似地服從已知的確定分布庞溜,這樣我們就可以查閱這些確定分布的相關(guān)信息,得到待研究樣本所反映出來的總體的一些性質(zhì)碑定。
上面說到了“統(tǒng)計量”和“樞軸量”流码,下面簡單談一談。
- 什么是“統(tǒng)計量”不傅?
統(tǒng)計量:不含總體分布未知參數(shù)的函數(shù)稱為樣本的統(tǒng)計量旅掂。統(tǒng)計量經(jīng)常作為一個樣本的代表,例如平均數(shù)访娶、眾數(shù)商虐、最大值、最小值崖疤,統(tǒng)計量由多個數(shù)映射成一個數(shù)秘车。 - 什么是“樞軸量”?
樞軸量:僅含有一個未知參數(shù)劫哼,并且分布已知的樣本的函數(shù)叮趴,稱為樞軸量。引入樞軸量的作用权烧,其實就是為了解方程眯亦,或者說解不等式伤溉,這一部分非常重要的理論基礎(chǔ)是“抽樣分布定理”。
如果忘記了的朋友們一定要翻翻以前的教程妻率,“抽樣分布定理”是非常重要的乱顾。根據(jù)抽樣分布定理,我們經(jīng)常是這樣用的:樣本的某個含有未知參數(shù)的函數(shù)符合某個已知分布宫静,已知分布可以查表走净,因此未知參數(shù)的性質(zhì)就知道了。求“置信區(qū)間”與做“假設(shè)檢驗”通常就是這樣的思路孤里。
卡方檢驗的統(tǒng)計量
說明: 是觀測頻數(shù)(實際值)伏伯, 是期望頻數(shù)(可以認(rèn)為是理論值),期望頻數(shù)的計算公式我們馬上會介紹到捌袜。這個統(tǒng)計量服從自由度為 的 分布说搅, 為行數(shù), 為列數(shù)虏等。
如何理解卡方檢驗的統(tǒng)計量蜓堕?
- 我們先看每一個加法因子的分子,是 博其,它表示了觀察頻數(shù)和理論頻數(shù)的“距離”(或者稱作“差距”),如果差距越小迂猴,卡方統(tǒng)計量的值就越小慕淡,則表示觀察頻數(shù)和理論頻數(shù)越接近;
- 分母是理論頻數(shù)沸毁,表示標(biāo)準(zhǔn)化峰髓,想想卡方分布的定義, 個標(biāo)準(zhǔn)正態(tài)分布的平方和息尺,所以這個統(tǒng)計量符合卡方分布(我這個說法只是為了幫助理解統(tǒng)計量的形式携兵,不是嚴(yán)格論證,嚴(yán)格的數(shù)學(xué)證明請參考相關(guān)教材)搂誉,我們就可以查閱卡方分布表徐紧,看看這個卡方分布取到這個統(tǒng)計量的概率有多大,如果這個概率大炭懊,表明觀察頻數(shù)和理論頻數(shù)差別不大并级,兩個類別變量獨立,如果這個概率小侮腹,表示觀察到這個頻數(shù)的概率很小嘲碧,即觀察頻數(shù)和理論頻數(shù)差別顯著,拒絕原假設(shè)父阻,兩個類別變量相關(guān)愈涩。
下面舉個例子望抽,說明卡方檢驗的基本流程。
例:研究類別變量“青少年行為”與類別變量“家庭狀況”的相關(guān)關(guān)系
以下例子選自中國人民大學(xué)龍永紅主編《概率論與數(shù)理統(tǒng)計》(第三版)P190 “獨立性檢驗”一節(jié)例 5.32履婉。
研究青少年行為與家庭狀況的關(guān)系煤篙,調(diào)查結(jié)果如下:
青少年行為\家庭狀況 | 離異家庭 | 和睦家庭 | 合計 |
---|---|---|---|
犯罪 | |||
未犯罪 | |||
合計 |
分析:“青少年行為”是離散型變量,有“犯罪”與“未犯罪”兩個取值谐鼎;“家庭狀況”是也離散型變量舰蟆,有“離異家庭”與“和睦家庭”兩個取值,從直覺上狸棍,我們認(rèn)為它們是相關(guān)的身害。因此
上面這張表,我們可以稱之為觀察頻數(shù)表草戈,觀察依據(jù)事實塌鸯。下面我們會計算一張“理論頻數(shù)表”,理論依據(jù)假設(shè)唐片。
- 第 1 步:建立統(tǒng)計假設(shè)丙猬。
原假設(shè):“青少年行為”與“家庭狀況”獨立。
備擇假設(shè):“青少年行為”與“家庭狀況”不獨立费韭。
- 第 2 步:計算期望頻數(shù)與檢驗統(tǒng)計量茧球。
要計算出檢驗統(tǒng)計量,關(guān)鍵是計算出期望頻數(shù)星持。我們之前說到了抢埋,假設(shè)檢驗是基于原假設(shè)進(jìn)行論證,因此我們的期望頻數(shù)應(yīng)該是基于【“青少年行為”與“家庭狀況”獨立】得到的督暂,即:兩個類別的交叉項的概率可以根據(jù)獨立事件的概率乘法公式 得到揪垄。具體是這樣做的,上面那張表中逻翁,把交叉項隱藏起來:
- 一行一行看饥努,這 個青少年里,八回,酷愧;
- 一列一列看,這 個青少年里辽社,伟墙,;
在【“青少年行為”與“家庭狀況”獨立】這個假設(shè)下有:
我們要計算期望頻數(shù)滴铅,就把上面這 個概率分別乘以樣本總數(shù) 就可以了戳葵,于是我們得到理論頻數(shù)表:
青少年行為\家庭狀況 | 離異家庭 | 和睦家庭 |
---|---|---|
犯罪 | ||
未犯罪 |
下面我們就套公式 了,將每個單元格的 加起來汉匙,就可以得到 統(tǒng)計量:
上面說服從自由度為 的 分布拱烁, 為行數(shù)生蚁, 為列數(shù),即服從 的 分布戏自,接下來邦投,我們就要看得到這個統(tǒng)計量的概率有多大:
from scipy import stats
import seaborn as sns
import matplotlib.pyplot as plt
samples = stats.chi2.rvs(size=10000, df=1)
sns.distplot(samples)
plt.title('$\chi^2$,df=1')
plt.show()
得到圖像如下:
可以看到, 都不在能圖像顯示到的范圍之內(nèi)擅笔,說明這個概率很低志衣。下面我們查表或者使用 Python 查一下,這個概率是多少:
from scipy import stats
stats.chi2.pdf(152.15, df=1)
2.956796099836173e-35
得到:猛们,確實是一個幾乎為 的數(shù)念脯。這說明了什么呢?
說明了弯淘,在我們的假設(shè)【“青少年行為”與“家庭狀況”獨立】下绿店,得到這組觀測數(shù)據(jù)的概率很低很低,基于<b><font size='3' color='ff0000'>小概率事件在一次試驗中幾乎不會發(fā)生</font></b>庐橙,但它卻發(fā)生了假勿,就證明了我們的“原假設(shè)”是不正確的,即有充分證據(jù)決絕“原假設(shè)”态鳖。(這一部分有點繞转培,其實很簡單,多看幾遍就非常清楚了浆竭。)
其實到這里堡距,我們對卡方檢驗就已經(jīng)介紹完了,是不是覺得很簡單兆蕉。但是在實際操作的過程中,我們還會引入 值缤沦,很多統(tǒng)計軟件也會幫我們計算出 值虎韵,這個 值是個什么鬼呢?下面先給出我的結(jié)論:
什么是 值缸废?
為什么提出了 值包蓝?檢驗統(tǒng)計量有什么不好?
說明:以下我根據(jù)對 值的理解自己總結(jié)的企量,是人話测萎,但不一定準(zhǔn)確。
得到“檢驗統(tǒng)計量”有個缺點届巩,就是它是一個很“死”的數(shù)字硅瞧,我們看到 ,我們只能直觀感覺它很大恕汇,因為如果觀察頻數(shù)與理論頻數(shù)大約相等腕唧,這個值應(yīng)該很小或辖,但不能量化這個值有多大。這只是統(tǒng)計量服從某個自由度的卡方分布的情況枣接。
那么問題來了颂暇,如果統(tǒng)計量服從其它分布呢?統(tǒng)計量這個干巴巴的數(shù)字但惶,你怎么知道這個這個分布取到這個統(tǒng)計量的概率有多大耳鸯?因此還差一步,我們還必須查表膀曾。所以得到 值的過程就是幫你查表了县爬, 值是一個概率值,它介于 和 之間妓肢, 值是當(dāng)前分布取到這個統(tǒng)計量的概率到當(dāng)前分布極端值(指的是概率很小的極端值)這個區(qū)間的累計概率之和捌省,即取到這個值,到比這個值更“差”的概率之和碉钠,如果 值很大纲缓,說明統(tǒng)計量取當(dāng)前值的概率在一個正常的范圍(一般是認(rèn)為設(shè)定成 ),如果 值很小喊废,說明這個統(tǒng)計量取當(dāng)前值的概率也非常小祝高。
特別說明:對于連續(xù)型隨機(jī)變量來說,取到某個值的概率其實是 污筷,因此上面才用到了對于區(qū)間取概率之和工闺。
說明:上面所說的累積概率之和如果很小,小于一個臨界值瓣蛀,這個臨界值我們稱之為“顯著性水平”陆蟆,用 表示,一般取 惋增。多說一句叠殷,這個顯著性水平其實是我們在原假設(shè)成立的情況下,拒絕原假設(shè)的概率诈皿,即犯第一類錯誤的概率林束,具體就不展開了,請參考相關(guān)《概率論與數(shù)理統(tǒng)計》教材稽亏。
所以我們總結(jié)一下:
1壶冒、 值統(tǒng)一了假設(shè)檢驗的比較標(biāo)準(zhǔn),把計算統(tǒng)計量的概率大小統(tǒng)一變成計算 值截歉,如果這個 值小于一個預(yù)先設(shè)定好的很小的數(shù)胖腾,則拒絕原假設(shè),如果 值大于這個預(yù)先設(shè)置好的很小的數(shù),則說明沒有充分證據(jù)拒絕原假設(shè)胸嘁;
2瓶摆、使用 值進(jìn)行假設(shè)檢驗的時候,會更便利性宏。因此群井,使用 值進(jìn)行假設(shè)檢驗的評判標(biāo)準(zhǔn)就只要一個,就是記住這句話“小拒大接”毫胜,即比 小书斜,就拒絕“原假設(shè)”,比 大酵使,結(jié)論是“沒有理由拒絕原假設(shè)”荐吉。
值在不同的檢驗問題中,計算的方式會有一些不同口渔,區(qū)別就在于概率極端值是在一側(cè)還是在兩側(cè)样屠。在這里,我們就以卡方檢驗為例缺脉,如果我們計算出來的統(tǒng)計量的值為 痪欲,那么看圖:
這個時候,統(tǒng)計量取 的概率就很高了攻礼,從圖中可以看出大于 业踢。我們作如下分析:
- 分布長尾在右邊,是個右偏分布礁扮,在 附近的概率是非常高的知举,我們要找一個臨界值,如果統(tǒng)計量取到這個臨界值太伊,以及這個臨界值的右邊雇锡,我們認(rèn)為這樣的事情發(fā)生的概率是很低的,這里就要借助累計概率和分位點的概念僚焦;
(說明:累計積分和分位點的概念都是十分重要的遮糖,在這里就不贅述了,讀者可以查閱相關(guān)統(tǒng)計學(xué)的教材叠赐。)
- 我們認(rèn)為,在 分布屡江,如果一個點到右邊無窮的累計積分小于“顯著性水平”芭概,我們就認(rèn)為這個點以及右邊所有的點的取值,都是小概率事件惩嘉。
于是罢洲,對于卡方檢驗而言,得到的統(tǒng)計量,我們可以計算這個從統(tǒng)計量到正無窮的積分惹苗,如果這個積分值小于“顯著性水平”殿较,即認(rèn)為這個統(tǒng)計量的概率一定在“顯著性水平”所確定的臨界點的右邊,即它是比“小概率事件”發(fā)生的概率還小的“小概率事件”桩蓉。
下面淋纲,我們自己寫一個函數(shù)來實現(xiàn)卡方檢驗相關(guān)的計算,實現(xiàn)和 scipy
軟件包提供的卡方檢驗同樣的效果院究。
from scipy import stats
from scipy.stats import chi2_contingency
def custom_chi2_contingency(observed):
"""
自己編寫的卡方檢驗的函數(shù)洽瞬,返回
"""
# 每一行求和
row = observed.sum(axis=1)
# 每一列求和
col = observed.sum(axis=0)
# 總數(shù)求和
all_sum = observed.sum()
# meshgrid 生成網(wǎng)格
x1, x2 = np.meshgrid(col, row)
# 期望頻數(shù)
expected_count = x1 * x2 / all_sum
# 統(tǒng)計量,即卡方值
chi2 = ((observed - expected_count)**2 / expected_count).sum()
# 自由度
df = (len(row) - 1) * (len(col) - 1)
# 計算 p 值业汰,這里用到了卡方分布的概率積累函數(shù)伙窃,
# 因為這個 cdf 是計算從左邊到這點的累計積分,因此用 1 減它
p = 1 - stats.chi2.cdf(chi2, df=df)
return chi2, p, df, expected_count
下面驗證我們編寫的卡方檢驗函數(shù)的正確性:
obs = np.array([[178, 272], [38, 502]])
result1 = custom_chi2_contingency(obs)
result2 = chi2_contingency(obs)
print('自定義卡方檢驗的函數(shù)返回:')
print(result1)
print()
print('scipy 提供的卡方檢驗返回:')
print(result2)
自定義卡方檢驗的函數(shù)返回:
(152.16271892047084, 0.0, 1, array([[ 98.18181818, 351.81818182],
[117.81818182, 422.18181818]]))
scipy 提供的卡方檢驗返回:
(150.2623232486362, 1.5192261812214016e-34, 1, array([[ 98.18181818, 351.81818182],
[117.81818182, 422.18181818]]))
顯示:
自定義卡方檢驗的函數(shù)返回:
(152.16271892047084, 0.0, 1, array([[ 98.18181818, 351.81818182],
[117.81818182, 422.18181818]]))
scipy 提供的卡方檢驗返回:
(150.2623232486362, 1.5192261812214016e-34, 1, array([[ 98.18181818, 351.81818182],
[117.81818182, 422.18181818]]))
參考資料
1样漆、結(jié)合日常生活的例子为障,了解什么是卡方檢驗
http://www.reibang.com/p/807b2c2bfd9b
2、假設(shè)檢驗之八:p值是什么:
https://zhuanlan.zhihu.com/p/26068572