Correlation

Fisher 的 z 變換何時合適?

  • June 28, 2013

我想測試樣本相關性對於顯著性,使用 p 值,即

我知道我可以使用 Fisher 的 z 變換來計算這個

並通過以下方式找到 p 值

使用標準正態分佈。

我的問題是:多大應該為此進行適當的改造嗎?明顯地,必須大於 3。我的教科書沒有提到任何限制,但在本演示文稿的幻燈片 29 上它說必須大於 10。對於我要考慮的數據,我會有類似.

對於這樣的問題,我會運行一個模擬,看看是否-values 的行為與我期望的一樣。這-value 是隨機抽取一個樣本的概率,該樣本與零假設的偏差至少與您觀察到的數據一樣多,如果零假設為真。所以如果我們有很多這樣的樣本,其中一個有一個- 0.04 的值,那麼我們預計這些樣本中有 4% 的值小於 0.04。對於所有其他可能的情況也是如此-價值觀。

下面是Stata中的模擬。圖表檢查是否-values 衡量他們應該衡量的內容,也就是說,它們顯示樣本的比例有多少-值小於標稱值- 值偏離標稱-價值。正如您所看到的,對於如此少量的觀察,測試有些問題。它是否對你的研究來說太成問題是你的判斷。

clear all
set more off

program define sim, rclass
   tempname z se
   foreach i of numlist 5/10 20(10)50 {
       drop _all
       set obs `i'
       gen x = rnormal()
       gen y = rnormal()
       corr x y 
       scalar `z'  = atanh(r(rho))
       scalar `se' = 1/sqrt(r(N)-3)
       return scalar p`i' = 2*normal(-abs(`z'/`se'))
   }
end

simulate p5 =r(p5)  p6 =r(p6)  p7  =r(p7)     ///
        p8 =r(p8)  p9 =r(p9)  p10 =r(p10)    ///
        p20=r(p20) p30=r(p30) p40 =r(p40)    ///
        p50=r(p50), reps(200000) nodots: sim 

simpplot p5 p6 p7 p8 p9 p10, name(small, replace) ///
   scheme(s2color) ylabel(,angle(horizontal)) 

在此處輸入圖像描述

simpplot p20 p30 p40 p50 , name(less_small, replace) ///
   scheme(s2color) ylabel(,angle(horizontal)) 

在此處輸入圖像描述

引用自:https://stats.stackexchange.com/questions/62824

comments powered by Disqus