0

データフレームのノンパラメトリック検定を実行したいと思います。私には3つのグループA、B、Cがあります。ここで、グループA / B、B / C、およびA/C間の統計的有意性について説明します。どうすればそれを非パラメトリックに行うことができますか?Kruskal-Wallis-Testを適用すると、グループ間の全体的な推論が得られます。これは、次の事後テストの保護として機能します。しかし、ノンパラメトリック事後検定をプログラムする方法(Kruskal-WallisまたはMann-Whitney-Uのいずれかを使用)?

x<-c(1,2,3,4,5,6,7,8,9,NA,9,8)
y<-c(2,3,NA,3,4,NA,2,3,NA,2,3,4)
group<-rep((factor(LETTERS[1:3])),4)
df<-data.frame(x,y,group)
df
4

1 に答える 1

2

上記のコメント内の議論を要約すると、R プロジェクトと複数のノンパラメトリック比較を実行するいくつかの (あまり知られていない) 可能性があります。上記の例では、そのうちの 2 つを含めました。

library(pgrimess)
library(nparcomp)

x<-c(1,2,3,4,5,6,7,8,9,NA,8,9)
y<-c(2,3,NA,3,4,NA,2,3,NA,2,3,4)
group<-rep((factor(LETTERS[1:3])),4)
df<-data.frame(x,y,group)


kruskal.test(df$x~df$group)
kruskalmc(df$x~df$group)

m<-nparcomp(x ~ group, data=df, asy.method = "probit", type = "Dunnett", control = "A", alternative = "two.sided", info = FALSE)
summary(m) 

nparcomp は明らかにより柔軟で、多種多様なコントラストが可能です。ここでは例としてダネットを取り上げました。

いくつかの投稿によると、複数のテストの提案された手順があり、大規模なデータセットでいくつかの精度の問題が発生しました。 https://stat.ethz.ch/pipermail/r-help/2012-January/300100.html

NDWD <- oneway_test(price ~ clarity, data = diamonds,
        ytrafo = function(data) trafo(data, numeric_trafo = rank),
        xtrafo = function(data) trafo(data, factor_trafo = function(x)
            model.matrix(~x - 1) %*% t(contrMat(table(x), "Tukey"))),
        teststat = "max", distribution = approximate(B=1000))

    ### global p-value
    print(pvalue(NDWD))

    ### sites (I = II) != (III = IV) at alpha = 0.01 (page 244)
    print(pvalue(NDWD, method = "single-step"))

別の可能性は、Frank Harrell https://stat.ethz.ch/pipermail/r-help/2012-January/300329.htmlによって提案されているように、rms::polr の後に rms::contrasts が続きます。

最後に、user1317221_G には、テストの結果を組み込んだ箱ひげ図https://stats.stackexchange.com/a/20133を含むいくつかの非常に便利なリンクが含まれており、箱ひげ図の高度なグラフ化に関するより詳細な説明は、http://でさらに 1 つのリンクで見つかります。 egret.psychol.cam.ac.uk/statistics/R/graphs2.html

うまくいけば、それはそのセクターのいくつかの問題を解決します.

于 2013-01-06T13:59:30.653 に答える