La statistique W produite par wilcox.test () dans R est-elle la même que la statistique U?

22

J'ai récemment lu sur le test de Mann-Whitney U. Il s'avère que pour effectuer ce test dans R, vous devez réellement exécuter un test de Wilcoxon!

Ma question: la statistique W de wilcox.testin R est-elle identique à la statistique U?

luciano
la source

Réponses:

25

Wilcoxon est généralement considéré comme l'inventeur original du test *, bien que l'approche de Mann et Whitney ait été un grand pas en avant, et ils ont étendu les cas pour lesquels la statistique a été tabulée. Ma préférence est de faire référence au test sous le nom de Wilcoxon-Mann-Whitney, pour reconnaître les deux contributions (Mann-Whitney-Wilcoxon est également vu; cela ne me dérange pas non plus).

* Cependant, l'image réelle est un peu plus trouble, plusieurs autres auteurs proposant également des statistiques identiques ou similaires sur cette période ou plus tôt, ou dans certains cas, apportant des contributions qui sont étroitement liées au test. Au moins une partie du crédit devrait aller ailleurs.

Le test de Wilcoxon et le test de Mann-Whitney U sont équivalents (et l'aide indique qu'ils le sont) en ce qu'ils rejettent toujours les mêmes cas dans les mêmes circonstances; tout au plus, leurs statistiques de test ne différeront que par un décalage (et dans certains cas, juste éventuellement un changement de signe).

Le test de Wilcoxon est défini de plus d'une façon dans la littérature (et cette ambiguïté remonte à la tabulation originale de la statistique de test, plus que dans un instant), il faut donc faire attention avec lequel le test de Wilcoxon est discuté.

Les deux formes de définition les plus courantes sont discutées dans cette paire de messages:

Test de somme de rang de Wilcoxon en R

Différentes façons de calculer la statistique de test pour le test de somme de rang de Wilcoxon

Pour répondre à ce qui se passe spécifiquement dans R:

La statistique utilisée par wilcox.testdans R est définie dans l'aide ( ?wilcox.test), et la question de la relation avec la statistique de Mann-Whitney U y est expliquée:

La littérature n'est pas unanime sur les définitions de la somme de rang de Wilcoxon et des tests de Mann-Whitney

Les deux définitions les plus courantes correspondent à la somme des rangs du premier échantillon avec la valeur minimale soustraite ou non: R soustrait et S-PLUS non, donnant une valeur plus grande de m (m + 1) / 2 pour un premier échantillon de taille m. (Il semble que l'article original de Wilcoxon ait utilisé la somme non ajustée des rangs, mais les tableaux suivants ont soustrait le minimum.)

La valeur de R peut également être calculée comme le nombre de toutes les paires (x[i], y[j])pour lequel y[j]n'est pas supérieur à x[i], la définition la plus courante du test de Mann-Whitney.

Cette dernière phrase répond complètement à cet aspect de votre question - la version de W que R met * est également la valeur de U.

n1(n1+1)2

Glen_b -Reinstate Monica
la source
7

Le test de somme de rang de Wilcoxon et le test de Mann-Whitney sont tous deux des équivalents non paramétriques du test t indépendant . Dans certains cas, la version de W que R donne, est également la valua de U. Mais pas dans tous les cas.

Lorsque vous utilisez: wilcox.test(df$var1 ~ df$var2, paired=FALSE)le W donné est le même que U. Vous pouvez donc le déclarer comme la statistique U de Mann-Whitney.

Cependant, lorsque vous utilisez:, wilcox.test(df$var1 ~ df$var2, paired=TRUE)vous effectuez en fait un test de classement signé par Wilcoxon. Le test de classement signé de Wilcoxon est l'équivalent du test t dépendant .

Source: "Découvrir les statistiques à l'aide de R" par Andy Field (2013)

Jaap
la source
1
Une bonne idée de souligner que si vous utilisez l'argument, paired=TRUEce n'est pas le Wilcoxon-Mann-Whitney mais le rang signé.
Glen_b -Reinstate Monica
1

Notez cependant que le code: wilcox.test(df$var1 ~ df$var2, paired=FALSE)(en utilisant '~')

produira une statistique W différente de a: wilcox.test(df$var1, df$var2, paired=FALSE)(en utilisant ',')

Tilen
la source
Bienvenue sur le site, @Tilen. Était-ce destiné à répondre à la question du PO, à un commentaire demandant des éclaircissements au PO ou à l'un des répondeurs, ou à une nouvelle question de votre part? Veuillez utiliser uniquement le champ «Votre réponse» pour fournir des réponses à la question d'origine. Vous pourrez commenter n'importe où lorsque votre réputation est> 50. Si vous avez une nouvelle question, cliquez sur le gris ASK QUESTION en haut de la page et posez-la là, alors nous pouvons vous aider correctement. Puisque vous êtes nouveau ici, vous voudrez peut-être faire notre visite , qui contient des informations pour les nouveaux utilisateurs.
gung - Rétablir Monica
Merci beaucoup @gung. En effet, je suppose que c'était à la fois une réponse et une question. Merci pour les conseils. J'ai hâte d'y participer.
Tilen
Les «réponses» concernent uniquement les réponses directes à la question. Pouvez-vous le modifier pour le rendre plus purement une réponse?
gung - Rétablir Monica
Désolé pour ça. Je l'ai édité maintenant. Est-ce que ça a l'air mieux maintenant?
Tilen
1
Inutile de s'excuser. Je pense que votre réponse est implicite dans ce que vous avez mis ici, mais les gens devront lire entre les lignes. Pouvez-vous le rendre explicite et tout lier en un arc? Cependant, je ne suis pas sûr que ce soit vrai. Pour utiliser la version de formule, vous avez besoin d'un vecteur de valeurs et d'un indicateur de regroupement. Par exemple, wilcox.test(values~ind, with(df, stack(var1=var1, var2=var2)), paired=FALSE). Quand je fais ça, j'obtiens la même chose dans les Wdeux sens.
gung - Réintégrer Monica