我從不同的網站獲得了兩個樣本。我感興趣的參數是離散(頻率)。我爲兩個站點都進行了模擬,所以我知道每個站點隨機分佈的概率。由於我的模擬,我知道我的參數與其平均值的偏差不是正態分佈,所以我參加了參數測試。我有一個樣本柯爾莫哥洛夫 - 斯米爾諾夫檢驗樣本中是否可以從這些隨機分佈推導(例如數據,而不是真正的):Kolmogorov-Smirnov測試:在存在關係時應用於離散變量的雙樣本測試的精確p值
sample1 <- rep(1:5, c(25, 12, 12, 0, 1))
rand.prob1 <- c(.51, .28, .111, .08, 0.019)
StepProb1 <- stepfun(0:4, c(0, cumsum(rand.prob1)), right = T)
dgof::ks.test(sample1, StepProb1)
sample2 <- rep(1:5, c(19, 13, 10, 5, 3))
rand.prob2 <- c(.61, .18, .14, .05, 0.02)
StepProb2 <- stepfun(0:4, c(0, cumsum(rand.prob2)), right = T)
dgof::ks.test(sample2, StepProb2)
在下一步我要檢查,如果這兩個網站的樣本可能派生自相同的分配。對KS-測試(包stats
和dgof
)的兩個implemetations發出警告,因爲我的樣品有關係:
stats::ks.test(sample1, sample2)
dgof::ks.test(sample1, sample2)
如果我沒有理解Dufour and Farhat(2001)正確,有計算通過配合精確的p值的方法通過蒙特卡羅模擬破解。如果我正確理解dgof軟件包的軟件包描述,則其實施蒙特卡洛模擬僅適用於單樣本測試。
所以我的問題:是否有人知道如何計算R中的確切的p值,用於當關系存在時應用於離散變量的雙樣本Kolmogorov-Smirnov測試?
或者(雖然與R無關):如果沒有人知道如何以可承受的工作量來做到這一點,我會選擇不正確的p值,因此小心討論結果。但p值低於0.0001。我其實並不過分擔心。但是,我知道什麼......你認爲這是對的還是我在這種情況下犯了嚴重的錯誤?
在此先感謝,我已經感謝您閱讀,直到這裏。
看一看[bootstraped KS檢驗(http://sekhon.berkeley.edu/matching/ks。 boot.html)。 – pbible