2017-01-27 38 views
2

我發現mann-whitney測試的結果令人困惑,而gnu文檔沒有幫助我。 https://www.gnu.org/software/octave/doc/interpreter/Tests.html八度曼 - 惠特尼/ u_test p值混淆

這裏是簡單的例子我嘗試:

octave:1> x=[1,1,1,1,1] 
x = 

    1 1 1 1 1 

octave:2> y=[2,2,2,2,2,2] 
y = 

    2 2 2 2 2 2 

octave:3> [p,z]=u_test(x, y, "<>") 
p = 0.0061699 
z = -2.7386 
octave:4> [p,z]=u_test(x, y, ">") 
p = 0.0030849 
z = -2.7386 

第一u_test有道理的,因爲在是p值,零假設被拒絕,和替代方案中,它是P(X> Y) != 1/2將被接受。

但是,第二個u_test會表明零假設再次被拒絕,所以替代P(x> y)> 1/2被接受,這對我來說沒有任何意義。

我哪裏錯了?

回答

2

我看了一下u_test.m,該函數似乎有幾個bug,感謝您發現並報告它。

你是對的,作者混淆了測試的順序。根據他的定義應該是相反的(即你得到的結果應該是'<')。

此外,似乎z的計算也包含一個錯誤,這似乎在使用在線計算器時由不同的p值確認。

隨時可以在octave bug tracker上報告這個錯誤(並且請將結果錯誤頁面鏈接回到評論中,否則我會按照您的意願報告錯誤)。

與此同時,我將在一個補丁上工作。再次感謝。

+0

(一旦你報告錯誤,注意它,以發現補丁文件:)) –

+0

嗯,奇怪,我找到z(2.73)使用我發現的公式相同的值...但兩個不同的在線計算器爲它命名相同的不同值(2.65)。不知道發生了什麼... –

+0

謝謝塔索斯。請報告錯誤,因爲你是找到它的人。我只是困惑! – user609563