【实操】看了太多公式概念?你该学会怎么用T检验了!
相信看到這篇文章的同學,一定搜了很多次下面的關鍵詞
“T檢驗”、“Matlab”、“P值”、“T值”
網上公式一大堆,含義也都有解釋,看完之后覺得T檢驗就是為我而生的。但是具體怎么用到自己的數據庫中?代碼到底怎么寫?樣本輸入格式是啥?P值、T值怎么計算?好像并不是很懂,下面舉個栗子,幫助大家實操T檢驗。
首先T檢驗是用來判斷兩個樣本的差異性有多顯著的。如上圖所示,比如我們想告訴小貓怎么區分男生和女生,這里我們就需要用一個確切的特征(指標)來區分男生和女生。
比如說身高高于170的是男生,低于170的是女生。確定之后,小貓只需要問你多高就能判斷你是男生還是女生。當然在人人一米八的現在,只用身高難免有點誤判,所以我們還可以選取【年齡】【體重】【高數成績】等參數作為特征來綜合判斷到底是男生還是女生。
當然,這些特征并不是每個都能很好的區分男生和女生。那么,怎么判斷某個特征是否有區分能力,以及區分能力的強弱呢?這里就要有請T檢驗登場了!
如上圖所示,只需要將同一特征下的兩類樣本數據輸入到【T檢驗函數】中就可以獲得結果(P值和T值)。這里用到的函數如下:
將特征年齡對應的兩類樣本數據輸入到函數中看下結果。
函數輸入如下:
這里輸出兩個參數是我們關心的,即P值和T值。
同理,我們可以對其他三個特征都進行T檢驗,結果如下:
BCDE分別對應【年齡】【身高】【體重】【高數成績】,可以看到【年齡】對應的P值最大是0.69,T值最小是0.40。這代表什么意思呢?
P值反映了兩類樣本差異性的置信度,也就是說我們都多大的把握相信這個特征下兩類樣本是具有差異性的。
通常P值有三個閾值0.05,0.01和0.001,如果 P值<0.05 ,我們則有95%的把握相信該特征下的兩類樣本是具有差異性的,若 0.01<P值<0.05 ,我們則有99%的把握,同理可推0.001。
這時,反觀我們T檢驗的結果。如上圖,C的P值小于0.001,我們有99.9%的把握相信【身高】是可以區分男女生的;DE的P值小于0.01,我們有99%的把握相信,【體重】【高數成績】是可以區分男女生的;而B的P值為0.69,可以看到在目前的樣本數據中并不能通過【年齡】來區分男女生。
最后,再分析下P值和T值的關系,從上圖可以看到,P值是t分布曲線和直線 X=t 在右側圍成的面積。可以看到T值越大則P值越小,樣本差異性越明顯。
從我們的T檢驗的結果可以看到【體重】和【高數成績】的P值相差無幾,T值卻接近于相反數。這是由于不管T值是正數還是負數,曲線和直線圍成的面積都是一樣的,如上圖。
而且,在Matlab官方函數 ttest2 中,將兩個輸入樣本順序改變后,T值的正負也會隨之改變,如下圖。所以,如果要使用T值對兩個特征進行比較的話,則需要比較 絕對值 大小。
為了方便大家使用T檢驗,我對T檢驗函數進行封裝,只需要按照文中EXCEL格式編輯自己的數據庫文件,不需要調任何參數,即可實現Matlab全自動導出P值和T值。效果如下圖所示:
最后的最后,T檢驗用來篩選特征,那么篩選好的特征還是需要小貓去進行判斷,能否用優選特征訓練一個模型,之后模型自動輸出分類結果?
【機器學習實操】待更~
猜你喜歡:👇🏻
?Matlab循環讀取txt文件并對其中數據進行計算最后導出為excel
?Matlab 實現對 Excel sheet 重命名 合并單元格
?Matlab對話框總結
總結
以上是生活随笔為你收集整理的【实操】看了太多公式概念?你该学会怎么用T检验了!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: web前端警惕:意料之外的全局变量声明
- 下一篇: mysql 允许用户远程_Mysql 允