1

次のデータがあります(dat)

次のデータがあります(dat)

V  W  X    Y   Z
1  8  89   3  900
1  8  100  2  800
0  9  333  4  980
0  9  560  1  999

上記のデータ セットに対して TukeysHSD ペアワイズ テストを実行したいと考えています。

library(reshape2)
dat1 <- gather(dat) #convert to long form
pairwise.t.test(dat1$key, dat1$value, p.adj = "holm")

ただし、実行しようとするたびに、実行が継続され、出力が得られません。これを修正する方法について何か提案はありますか?

また、関数 TukeyHSD() を使用して同じテストを実行したいと思います。ただし、ワイド/ロング形式を使用しようとすると、次のようなエラーが発生します

    " Error in UseMethod("TukeyHSD") : 
  no applicable method for 'TukeyHSD' applied to an object of class "data.frame"
4

1 に答える 1

4

指定されていないため、「x」を dat1$value にする必要があります。最初の引数は「x」、2 番目の引数は「g」と見なされます。

pairwise.t.test( dat1$value, dat1$key, p.adj = "holm")
#data:  dat1$value and dat1$key 

#  V       W       X       Y      
#W 1.000   -       -       -      
#X 0.018   0.018   -       -      
#Y 1.000   1.000   0.018   -      
#Z 4.1e-08 4.1e-08 2.8e-06 4.1e-08

#P value adjustment method: holm 

または、引数を指定して、必要な順序で使用します

pairwise.t.test(g = dat1$key, x= dat1$value, p.adj = "holm")

についてTukeyHSD

TukeyHSD(aov(value~key, data = dat1), ordered = TRUE)
#Tukey multiple comparisons of means
#    95% family-wise confidence level
#    factor levels have been ordered

#Fit: aov(formula = value ~ key, data = dat1)

#$key
#      diff        lwr       upr     p adj
#Y-V   2.00 -233.42378  237.4238 0.9999999
#W-V   8.00 -227.42378  243.4238 0.9999691
#X-V 270.00   34.57622  505.4238 0.0211466
#Z-V 919.25  683.82622 1154.6738 0.0000000
#W-Y   6.00 -229.42378  241.4238 0.9999902
#X-Y 268.00   32.57622  503.4238 0.0222406
#Z-Y 917.25  681.82622 1152.6738 0.0000000
#X-W 262.00   26.57622  497.4238 0.0258644
#Z-W 911.25  675.82622 1146.6738 0.0000000
#Z-X 649.25  413.82622  884.6738 0.0000034
于 2016-12-10T16:35:24.417 に答える