日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

2×3卡方检验prism_分类变量的相关性:五分钟掌握卡方检验「从理论到Python实战」...

發布時間:2023/12/19 python 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2×3卡方检验prism_分类变量的相关性:五分钟掌握卡方检验「从理论到Python实战」... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

卡方檢驗

當衡量兩個連續變量間的線性關系時,我們可以使用Pearson相關系數。那么當我們面對的數據是兩個分類變量呢?沒錯,看過下面這張圖的應該還記得,我們可以用列聯表結合卡方檢驗來分析分類變量間的相關性。

一、列聯表

列聯表是一種常見的分類匯總表,它將兩個變量的不同水平分別放在行和列中,中間對應著每組的頻數。如下表:使用藥物A且治愈了的病人有1800名,使用藥物B且治愈了的病人有800名……

在pandas中,我們可以直接使用pd.crosstab(rows,columns,margins=True)來生成列聯表。其中margins用于設置是否限制匯總列和匯總行。

有些時候我們可能需要百分比數據,這時我們直接用每個單元格除以匯總列或匯總行的數據即可。

二、卡方檢驗

卡方檢驗的思想在于比較期望頻數和實際頻數的吻合程度,實際頻數就是上邊表格里黃色區域的數字,而期望頻數則是指行列變量相互獨立的時候期望的頻數。我們下邊用一張圖來演示如何計算期望頻數。

在第三張圖中,每個單元格的期望頻率為對應的行總計與列總計的乘積,比如第一個單元格的期望頻率為66.67%*86.67%=57.78%。

事實上,我們也可以一步到位,用第一張圖中行總計2000與列總計2600相乘,然后除以全部樣本量3000,就可以得到1733,也就是第一個單元格的期望頻數。不過這里為了方便理解,拆解成了三步。

接下來就是進行卡方檢驗了,卡方檢驗的零假設是期望頻數等于實際頻數(差異不顯著),備擇假設是期望頻數不等于實際頻數(差異顯著,具有統計學意義),即兩個變量相關。其計算公式為:

Obs代表每個單元格內的觀測頻數(Observation),Exp代表每個單元格內的期望頻數(Expection)。我們用上邊這個例子演示一下:

到這里還沒結束,我們需要根據求得的值從卡方分布中找到對應的概率。

卡方分布

卡方統計量服從自由度為(r-1)(c-1)的卡方分布(r=row,代表行數,c=column,代表列數)。我們用一張圖來看一下:

其中k就是卡方分布的自由度。可以看到當自由度為1時,卡方分布是一個長尾型的分布。那么我們現在來看一下剛才的問題,兩種藥品的治愈效果一樣嗎?

from scipy.stats import chi2_contingencyimport pandas as pddf = pd.DataFrame({ 'medical': ['A', 'A', 'B', 'B'], 'cured': [1, 0, 1, 0], 'count': [1800, 200, 800, 200]})cross_tab = pd.pivot_table(data=df, values='count', index='medical', columns='cured', margins=True, aggfunc=np.sum)print(cross_tab)print('卡方={0}P值={1}'.format( *chi2_contingency(cross_tab)[:2]))

可以看到,p值小于0.05,可以認為兩個變量之間存在相關性。不過需要注意的是,卡方檢驗并不能得出兩個分類變量相關性的強弱,只能展現出它們是否相關。

總結

以上是生活随笔為你收集整理的2×3卡方检验prism_分类变量的相关性:五分钟掌握卡方检验「从理论到Python实战」...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。