Confidence-Interval

我們如何為置換檢驗的參數創建置信區間?

  • August 30, 2010

置換檢驗是基於從原始數據中隨機抽取的置換重採樣的顯著性檢驗。置換重採樣是在不替換的情況下繪製的,與引導樣本相反,引導樣本是通過替換繪製的。這是我在 R中做的一個簡單排列測試的例子。(歡迎您的意見)

置換測試有很大的優勢。它們不需要特定的人口形狀,例如正態性。它們適用於各種統計數據,而不僅僅是在零假設下具有簡單分佈的統計數據。無論群體的形狀和大小如何(如果使用了足夠的排列),它們都可以提供非常準確的 p 值。

我還讀到,在測試中給出置信區間通常很有用,該測試是使用引導重採樣而不是置換重採樣創建的。

您能否解釋(或僅給出 R 代碼)如何構建置信區間(即上述示例中兩個樣本均值之間的差異)?

編輯

經過一番谷歌搜索後,我發現了這個有趣的閱讀

可以使用置換重採樣。這實際上取決於許多因素。如果您的排列是一個相對較低的數字,那麼您對置信區間的估計對於排列來說並不是那麼好。您的排列在某種程度上處於灰色區域,並且可能很好。

與您之前的代碼的唯一區別是您將隨機生成樣本而不是排列。而且,您會生成更多,例如 1000 個。獲取 1000 次實驗重複的差異分數。取中間 950 (95%) 的截止值。這就是你的置信區間。它直接從引導程序中掉下來。

您已經在示例中完成了大部分操作。diff.treat 的長度為 462 項。因此,您需要較低的 2.5% 和較高的 2.5% 截止(每端大約 11 個項目)。

使用您之前的代碼…

y <- sort(dif.treat)
ci.lo <- y[11]
ci.hi <- y[462-11]

順便說一句,我會說 462 有點低,但你會發現 10,000 的引導程序得出的分數略有不同(可能更接近平均值)。

以為我還會添加一些需要引導庫的簡單代碼(基於您之前的代碼)。

diff <- function(x,i) mean(x[i[6:11]]) - mean(x[i[1:5]])
b <- boot(total, diff, R = 1000)
boot.ci(b)

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

comments powered by Disqus