Bonjour,

mes données sont non normales alors j'ai réalisé un test de kruskal wallis et un test de wilcoxon.

Dans la réponse de mon test de wilcoxon j'ai des warnings car il y a des ex-aequos, comme ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
> fi5$condition <- interaction(fi5$var, fi5$temp, sep="_")
> P   = pairwise.wilcox.test(x = fi5$glc, g = fi5$condition)
There were 49 warnings (use warnings() to see them)
> warnings()
Messages d'avis :
1: In wilcox.test.default(xi, xj, paired = paired, ...) :
  impossible de calculer la p-value exacte avec des ex-aequos
2: In wilcox.test.default(xi, xj, paired = paired, ...) :
  impossible de calculer la p-value exacte avec des ex-aequos
En effet, certaines données sont identiques mais ce n'est pas une erreur ce sont les mesures reelles ce qui signifie pour moi qu'il n'y a pas de dfiférence significative entre mes groupes qui ont les mêmes valeurs sauf que dans la réponse pour ces ex-aequos R fourni des NaN au lieu des p-values quand j'appelle mes p-value comme ceci:

voici un exemple de mon tableau réponse triangulaire:
Agria_4 Kiebitz_4 Lady Claire_4 Markies_4 Pirol_4 Verdi_4 Agria_8 Kiebitz_8
Pirol_8 0.4721823 0.7610958 1.0000000 0.4721823 0.4721823 0.4721823 0.7610958 NaN
Verdi_8 0.4721823 0.7610958 1.0000000 0.4721823 0.4721823 0.4721823 0.7610958 NaN
j'utilise la fonction suivante que j'ai trouvé sur internet pour convertir en tableau rectangulaires:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
fullPTable = 
  function(PT)
  {
    PTa <- rep(c(NA_real_),length(PT[,1]))         # Add a row
    PT1 <- rbind(PTa, PT)
    rownames(PT1)[1] <- colnames(PT1)[1]
    PTb <- rep(c(NA_real_),length(PT1[,1]))        # Add a column
    PT1 <- cbind(PT1, PTb)
    n <- length(PT1[,1])
    colnames(PT1)[n] <- rownames(PT1)[n]
    PT2 = t(PT1)                                   # Create new transposed
    PT2[lower.tri(PT2)] = PT1[lower.tri(PT1)]
    diag(PT2) = signif(1.00, digits = 4)           # Set the diagonal
    PT2
  }
PT1 = fullPTable(PT)
PT1
et ensuite j'utilise ceci pour extraire les lettres pour faire mon graphique:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
library(multcompView)
multcompLetters(PT1, compare = "<", threshold = 0.05, Letters = c(letters,
                                                                LETTERS, "."), reversed = FALSE)
sauf que j'ai le message d'erreur suivant :
Error in if (k2 == 0) { : missing value where TRUE/FALSE needed
et c'est à cause des ex-aequos

est-ce qu'il y a un moyen / code d'avoir mes lettres pour mon graphiques? par exemple en attribuant la même lettre aux ex-aequos puisqu'ils ne sont pas différents?

Merci par avance.
Cordialement.