It may be, but the documentation for kruskal() seems to have fallen behind 
updates to the function. The kruskal() manual page indicates values returned by 
the function that have no connection to what is actually returned and M is not 
described at all. 

There is another version of the test, DunnTest() in the package DescTools. It 
appears to be less conservative than kruskalmc(). DunnTest() finds 6 
significant differences between the 10 pairs at .05 to the 4 identified by 
kruskalmc().

> library(DescTools)
> DunnTest(Heliocide~Treatment, dta)

 Dunn's test of multiple comparisons using rank sums : holm  

          mean.rank.diff    pval    
1_7d-1_2d       6.045455  0.5618    
3_2d-1_2d       3.833333  0.5648    
9_2d-1_2d      21.500000  0.0083 ** 
C-1_2d        -17.045455  0.0342 *  
3_2d-1_7d      -2.212121  0.5648    
9_2d-1_7d      15.454545  0.0602 .  
C-1_7d        -23.090909  0.0040 ** 
9_2d-3_2d      17.666667  0.0342 *  
C-3_2d        -20.878788  0.0083 ** 
C-9_2d        -38.545455 3.2e-07 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

David C

From: Michael Eisenring [mailto:michael.eisenr...@gmx.ch] 
Sent: Monday, September 28, 2015 10:40 AM
To: David L Carlson
Cc: David Winsemius; 'r-help'
Subject: Aw: RE: [R] How to get significance codes after Kruskal Wallis test

Dear David,
Thanks for your answer.
Another member of the R list pointed out that one can actually use the function
kk<-kruskal(dta$Heliocide,dta$Treatment,group=TRUE,p.adj="bonferroni")
R gives then in the Results a section$groups
$groups
   trt     means M
1 9_2d 47.500000 a
2 1_7d 32.045455 b
3 3_2d 29.833333 b
4 1_2d 26.000000 b
5 C     8.954545 c
 
I guess the codes under $groups in Column M are the significance codes I am 
looking for.
 
Thanks,
Mike
  
Gesendet: Montag, 28. September 2015 um 07:28 Uhr
Von: "David L Carlson" <dcarl...@tamu.edu>
An: "David Winsemius" <dwinsem...@comcast.net>, "Michael Eisenring" 
<michael.eisenr...@gmx.ch>
Cc: 'r-help' <r-help@r-project.org>
Betreff: RE: [R] How to get significance codes after Kruskal Wallis test
The kruskalmc() function in package pgirmess performs a multiple comparisons 
analysis using the kruskal-wallis test. It indicates which pairs are 
significantly different, but it does not summarize the results in a compact 
letter display.

> library(pgirmess)
> kruskalmc(Heliocide~Treatment, dta)
Multiple comparison test after Kruskal-Wallis
p.value: 0.05
Comparisons
obs.dif critical.dif difference
1_2d-1_7d 6.045455 19.11021 FALSE
1_2d-3_2d 3.833333 18.69015 FALSE
1_2d-9_2d 21.500000 19.60240 TRUE
1_2d-C 17.045455 19.11021 FALSE
1_7d-3_2d 2.212121 19.11021 FALSE
1_7d-9_2d 15.454545 20.00331 FALSE
1_7d-C 23.090909 19.52123 TRUE
3_2d-9_2d 17.666667 19.60240 FALSE
3_2d-C 20.878788 19.11021 TRUE
9_2d-C 38.545455 20.00331 TRUE

-------------------------------------
David L Carlson
Department of Anthropology
Texas A&M University
College Station, TX 77840-4352



-----Original Message-----
From: R-help [mailto:r-help-boun...@r-project.org] On Behalf Of David Winsemius
Sent: Saturday, September 26, 2015 11:07 AM
To: Michael Eisenring
Cc: 'r-help'
Subject: Re: [R] How to get significance codes after Kruskal Wallis test


On Sep 26, 2015, at 6:48 AM, Michael Eisenring wrote:

> Thank you very much Kristina,
>
> Unfortunately that's not what I am looking for.
>
> I am just very surprised if there would be no possibility to get the 
> significance codes for Kruskal Wallis (I would have suggested that this is a 
> pretty common test.)

Well, it is modestly common test but its really a global test, and not a 
pairwise one.

> I found another option called kruskal() which does pairwise comparison, but 
> without significance codes.
>
> Maybe another R-list member knows more.
>

I'm not sure I "know more", and it's very possible I "know less". In particular 
I don't really know what the term "significance code" actually means. (I'm 
hoping it's not a request for "significance stars", a feature which is roundly 
deprecated by more knowledgeable R users.)

However, looking at the agricolae::kruskal function's help page and submitting 
the data in the non-formulaic manner it expects, I get this output very similar 
in form the the HSD.test output that it appeared you considered satisfied 
satisfactory:

(an.dta3<-kruskal(dta$Heliocide, dta$Treatment))

#--------------------
$statistics
Chisq p.chisq
30.25246 4.348055e-06

$parameters
Df ntr t.value
4 5 2.007584

$means
dta$Heliocide std r Min Max
1_2d 1992.7707 1747.1879 12 334.53973 4929.372
1_7d 2368.8057 1187.9285 11 767.22881 4624.945
3_2d 2640.1286 2659.5800 12 615.91181 8559.142
9_2d 5338.6711 1579.4428 10 3328.89713 8014.897
C 397.9086 443.6019 11 75.73956 1588.431

$rankMeans
dta$Treatment dta$Heliocide r
1 1_2d 26.000000 12
2 1_7d 32.045455 11
3 3_2d 29.833333 12
4 9_2d 47.500000 10
5 C 8.954545 11

$comparison
NULL

$groups
trt means M
1 9_2d 47.500000 a
2 1_7d 32.045455 b
3 3_2d 29.833333 b
4 1_2d 26.000000 b
5 C 8.954545 c

From context I am guessing that the "significance codes" you ask for are the 
items in the M column of the "groups" element of the list output.

--
David.

>
>
> Thank you,
>
> Mike
>
>
>
> Von: Kristina Wolf [mailto:kmw...@ucdavis.edu]
> Gesendet: Freitag, 25. September 2015 23:26
> An: Michael Eisenring <michael.eisenr...@gmx.ch>
> Cc: r-help <r-help@r-project.org>
> Betreff: Re: [R] How to get significance codes after Kruskal Wallis test
>
>
>
> Perhaps look into the function friedman.test.with.post.hoc()
>
> There is more information here: 
> http://www.r-statistics.com/wp-content/uploads/2010/02/Friedman-Test-with-Post-Hoc.r.txt
>
>
>
> Note, this does not handle NA's though, and technically it is for blocked 
> designs, but maybe it will lead you somewhere useful or could be adapted?
>
>
> ~ Kristina
>
> Kristina Wolf
> Ph.D. Candidate, Graduate Group in Ecology
> M.S. Soil Science
>
>
>
> On Fri, Sep 25, 2015 at 10:01 PM, Michael Eisenring <michael.eisenr...@gmx.ch 
> <mailto:michael.eisenr...@gmx.ch> > wrote:
>
> Is there a way to get significance codes after a pairwise comparisons to a
> Kruskall wallis test? With significance codes I mean letter codes (a, b,c)
> that are assigned to treatments to indicate where differences are
> significant.
>
> With a traditional anova such a test can be performed using HSD.test from
> the agricolae library but for non parametric counterparts of anova I have
> not been able to find anything.
>
> Can anyone help me?
>
> Thanks mike
>
>
>
> I added two example codes.
>
> First code represents an ANOVA and a HSD.test() giving me significant codes
>
> #FIRST CODE USING ANOVA
>
> library(agricolae)
> an.dta<-aov(Gossypol~Treatment,data=dta)
> summary(an.dta)
>
> HSD.test(an.dta,"Treatment")
> # The level by alpha default is 0.05.
> outT<-HSD.test(an.dta,"Treatment", group=T)
> outT
>
> #I receive significant codes.
>
>
> #SECOND CODE USING KRUSKAL WALLIs
>
> library(agricolae)
> an.dta2<-kruskal.test(Heliocide~Treatment,dta)
> summary(an.dta2)
>
> HSD.test(an.dta2,"Treatment")
>
> #ERROR MESSAGE no significance codes, why??
>
>
>
> #DATA FOR CODES
>
>
> structure(list(Treatment = structure(c(1L, 3L, 4L, 2L, 1L, 3L,
> 4L, 2L, 5L, 1L, 3L, 2L, 5L, 1L, 3L, 4L, 2L, 5L, 1L, 3L, 4L, 2L,
> 5L, 1L, 3L, 4L, 2L, 5L, 1L, 3L, 4L, 2L, 5L, 1L, 3L, 4L, 2L, 5L,
> 1L, 3L, 4L, 2L, 5L, 1L, 3L, 4L, 2L, 5L, 1L, 3L, 4L, 2L, 5L, 1L,
> 3L, 5L), .Label = c("1_2d", "1_7d", "3_2d", "9_2d", "C"), class = "factor"),
>
> Code = structure(c(1L, 2L, 3L, 4L, 18L, 19L, 20L, 21L, 22L,
> 23L, 24L, 25L, 26L, 27L, 28L, 29L, 30L, 31L, 32L, 33L, 34L,
> 35L, 36L, 37L, 38L, 39L, 40L, 41L, 42L, 43L, 44L, 45L, 46L,
> 47L, 48L, 49L, 50L, 51L, 52L, 53L, 54L, 55L, 56L, 5L, 6L,
> 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 15L, 16L, 17L), .Label =
> c("1_2d_1c",
> "1_2d_3c", "1_2d_9c", "1_7d_1c", "10_2d_1c", "10_2d_3c",
> "10_2d_9c", "10_7d_1c", "10_C", "11_2d_1c", "11_2d_3c", "11_2d_9c",
> "11_7d_1c", "11_C", "12_2d_1c", "12_2d_3c", "12_C", "2_2d_1c",
> "2_2d_3c", "2_2d_9c", "2_7d_1c", "2_C", "3_2d_1c", "3_2d_3c",
> "3_7d_1c", "3_C", "4_2d_1c", "4_2d_3c", "4_2d_9c", "4_7d_1c",
> "4_C", "5_2d_1c", "5_2d_3c", "5_2d_9c", "5_7d_1c", "5_C",
> "6_2d_1c", "6_2d_3c", "6_2d_9c", "6_7d_1c", "6_C", "7_2d_1c",
> "7_2d_3c", "7_2d_9c", "7_7d_1c", "7_C", "8_2d_1c", "8_2d_3c",
> "8_2d_9c", "8_7d_1c", "8_C", "9_2d_1c", "9_2d_3c", "9_2d_9c",
> "9_7d_1c", "9_C"), class = "factor"), Glands = c(165, 289.3333333,
> 319.3333333, 472, 334.6666667, 259, 373.3333333, 525.6666667,
> 275.3333333, 230.6666667, 346.3333333, 377.6666667, 255.3333333,
> 217.6666667, 266, 300.3333333, 354.3333333, 225.3333333,
> 294, 359, 359, 222.6666667, 103, 246.6666667, 324.6666667,
> 277, 460, 163.6666667, 226.3333333, 228, 357.6666667, 505,
> 142.6666667, 324, 278.6666667, 317.3333333, 335.6666667,
> 193.6666667, 188, 255, 252, 393.3333333, 248.3333333, 353,
> 320.6666667, 228.3333333, 497, 165.6666667, 209.3333333,
> 162.3333333, 280, 337, 169.6666667, 231.6666667, 257.6666667,
> 218.6666667), Tannin = c(0.334252451, 1.376077586, 0.896849593,
> 0.888621795, 0.464285714, 0.830236486, 0.870881783, 0.768489583,
> 0.647727273, 0.81372549, 0.51380814, 0.859923246, 0.495265152,
> 0.699932796, 1.09375, 0.785037879, 0.892650463, 0.518963675,
> 1.05859375, 0.447916667, 1.269097222, 1.147522523, 0.391276042,
> 0.883400538, 1.523989899, 0.907930108, 0.749155405, 0.450126263,
> 0.562239583, 0.911151961, 0.611111111, 1.610677083, 0.446428571,
> 0.601151316, 1.073635057, 1.359923246, 1.00154321, 0.90933642,
> 0.012054398, 1.102083333, 1.017361111, 1.052372685, 0.958607456,
> 1.224702381, 0.982291667, 1.045138889, 1.611607143, 0.662574405,
> 1.385416667, 0.464518229, 0.994444444, 1.239583333, 0.877514368,
> 0.74453125, 0.804315476, 1.024066092), H.polone = c(6754.067177,
> 22380.26652, 23622.79158, 23733.77678, 13099.20833, 23564.74907,
> 2725.016387, 18751.03986, 4283.098494, 23008.35336, 10205.56354,
> 19787.63361, 4302.050374, 7400.640798, 22442.86044, 34315.09631,
> 16498.66728, 14170.13252, 9509.1073, 6265.29637, 20671.56905,
> 14517.15648, 2643.950729, 4974.607571, 14782.87029, 13918.82361,
> 12526.27863, 1236.908141, 4854.469195, 4076.396504, 9603.950212,
> 13762.57476, 2298.727719, 3514.186757, 5705.140289, 14178.21668,
> 14277.39878, 2656.552509, 8184.633961, 9931.163373, 21474.90732,
> 18522.74376, 9884.406532, 17242.54114, 8431.506608, 14601.11606,
> 15748.4912, 2849.90903, 16747.27644, 9396.645481, 21996.95822,
> 5767.358748, 5767.358748, 14207.1734, 10353.21833, 2859.51171
> ), Gossypol = c(1036.331811, 4171.427741, 6039.995102, 5909.068158,
> 4140.242559, 4854.985845, 6982.035521, 6132.876396, 948.2418407,
> 3618.448997, 3130.376482, 5113.942098, 1180.171957, 1500.863038,
> 4576.787021, 5629.979049, 3378.151945, 3589.187889, 2508.417927,
> 1989.576826, 5972.926124, 2867.610671, 450.7205451, 1120.955,
> 3470.09352, 3575.043632, 2952.931863, 349.0864019, 1013.807628,
> 910.8879471, 3743.331903, 3350.203452, 592.3403778, 1517.045807,
> 1504.491931, 3736.144027, 2818.419785, 723.885643, 1782.864308,
> 1414.161257, 3723.629772, 3747.076592, 2005.919344, 4198.569251,
> 2228.522959, 3322.115942, 4274.324792, 720.9785449, 2874.651764,
> 2287.228752, 5654.858696, 1247.806111, 1247.806111, 2547.326207,
> 2608.716056, 1079.846532), Heliocide = c(711.1776124, 8559.141828,
> 8014.897387, 3972.305107, 3227.467943, 5778.242027, 3628.427557,
> 3177.426984, 325.1764586, 3774.732152, 3111.880146, 4624.945228,
> 160.8912744, 336.4018128, 5207.091788, 6360.856306, 1740.091298,
> 1588.430761, 3509.141442, 685.6917982, 4664.118976, 1477.26149,
> 75.73956465, 402.1570283, 3703.317553, 4235.211434, 1730.465296,
> 91.53557346, 334.5397274, 698.1713846, 3328.897126, 1742.69355,
> 231.9097243, 513.7933372, 774.6461158, 4687.003829, 1692.296924,
> 179.1968506, 1022.628651, 1199.898583, 6132.303567, 1971.798098,
> 413.3375988, 4072.908467, 615.911814, 4906.642605, 3160.349616,
> 117.642134, 4929.371855, 616.8755006, 7428.352411, 767.2288107,
> 767.2288107, 1078.928494, 730.6740868, 425.9053258), Damage..cm. =
> c(0.4955,
> 1.516, 4.409, 3.2665, 0.491, 2.3035, 3.51, 1.8115, 0, 0.4435,
> 1.573, 1.8595, 0, 0.142, 2.171, 4.023, 4.9835, 0, 0.6925,
> 1.989, 5.683, 3.547, 0, 0.756, 2.129, 9.437, 3.211, 0, 0.578,
> 2.966, 4.7245, 1.8185, 0, 1.0475, 1.62, 5.568, 9.7455, 0,
> 0.8295, 2.411, 7.272, 4.516, 0, 0.4035, 2.974, 8.043, 4.809,
> 0, 0.6965, 1.313, 5.681, 3.474, 0, 0.5895, 2.559, 0)), .Names =
> c("Treatment",
> "Code", "Glands", "Tannin", "H.polone", "Gossypol", "Heliocide",
> "Damage..cm."), class = "data.frame", row.names = c(NA, -56L))
>
>
> [[alternative HTML version deleted]]
>

David Winsemius
Alameda, CA, USA

______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to