Scipy Mann Whitney

Scipy Mann Whitney
Le langage de programmation Python est couramment utilisé dans les sciences des données et l'analyse des données. Les algorithmes simples, utiles, gratuits et faciles à comprendre du langage de programmation Python nous permettent d'effectuer une analyse de données approfondie. Les algorithmes utilisés dans les sciences des données sont également très simples à apprendre et à mettre en œuvre. De plus, le langage de programmation Python propose également plusieurs packages, fonctions et méthodes utiles pour effectuer les calculs mathématiques et statistiques. Cet article est structuré autour de l'exploration de la fonction de test Mann Whitney U à Python.

Test de Mann Whitney U

Il s'agit d'un test d'hypothèse statistique non paramétrique qui est utilisé pour comparer deux échantillons de petite taille et avoir une distribution d'échantillon non normale. Il est considéré comme égal au test t à deux échantillons où deux échantillons sont choisis au hasard et déterminés s'ils appartiennent à la même population ou non. Puisqu'il s'agit d'un test non paramétrique, aucune hypothèse n'est faite pour la distribution de l'échantillon. Cependant, certaines présomptions comme choisir au hasard les échantillons, l'indépendance mutuelle dans les échantillons, les mesures d'échelle ordinale, etc. sont faits.

Fonction Python Scipy Mann Whitney

Le langage de programmation Python a une bibliothèque incroyable pour remplir tout type de fonctions mathématiques et statistiques. Cette bibliothèque est Scipy qui est bien connue parmi tous les développeurs expérimentés et débutants. Il fournit une fonction mannwhitneyu () pour effectuer le test de Mann Whitney U. La syntaxe de la fonction mannwhitneyu () est la suivante:

Les paramètres de la fonction mannwhitneyu () sont utilisés pour définir les données et les fonctionnalités appliquées aux données. Les paramètres «x» et «y» sont utilisés pour passer les deux réseaux d'échantillons multidimensionnels représentant les données d'échantillon. Le paramètre «alternatif» spécifie l'hypothèse alternative pour les échantillons - moins, plus ou deux côtés. Le paramètre «use_continuity» est utilisé pour déclarer s'il faut appliquer la correction de la continuité ou non. Le paramètre «axe» définit l'axe sur lequel le calcul des statistiques doit effectuer. Le paramètre «nan_policy» définit comment gérer les valeurs NAN dans les échantillons comme lever une exception, sauter ou propager.

Et enfin, le paramètre «méthode» spécifie la voie à calculer la valeur p comme l'auto, exactement ou asymptotique. En retour, la fonction mannwhitneyu () donne la valeur p et les statistiques des échantillons. Comprenons comment implémenter la fonction mannwhitneyu () dans un programme Python.

Exemple 1:

Cet exemple prend deux échantillons et les transmet à la fonction mannwhitneyu () sans spécifier aucun autre paramètre. Nous vérifierons le résultat de la fonction mannwhitneyu () avec les valeurs par défaut pour chaque paramètre facultatif. Considérons l'exemple donné dans l'extrait de code suivant:

à partir des statistiques d'importation Scipy
x = [5, 4, 10, 2, 9, 18, 20]
y = [12, 15, 25, 2, 9, 11, 13]
stat, p_value = statistiques.Mannwhitneyu (x, y)
print ("La valeur statistique des échantillons est =", stat)
print ("La valeur p des échantillons est =", p_value)

Ici, nous incluons la bibliothèque Scipy avec le package des statistiques afin que nous puissions utiliser la fonction mannwhitneyu (). Lors de la rédaction d'un programme Python, vous devez vous rappeler que les bibliothèques doivent être importées dans le programme avant d'utiliser toute fonction qui lui est associée. Certaines des fonctions intégrées peuvent être utilisées sans appeler explicitement leurs bibliothèques. Mais la plupart des fonctions ne peuvent pas être utilisées dans un programme si vous manquez d'ajouter leurs bibliothèques dans le programme. Assurez-vous que toutes les bibliothèques requises sont incluses avant d'utiliser les fonctions.

Après avoir ajouté les bibliothèques, les deux ensembles d'échantillons sont déclarés en x et y. Ces échantillons sont transmis à la fonction mannwhitenyu (). Maintenant, vérifions la statistique et le p_value des échantillons donnés dans la sortie suivante:

Exemple 2:

Déclarons explicitement la valeur de l'un des paramètres facultatifs de cet exemple. Comme discuté précédemment, vous pouvez spécifier l'hypothèse alternative pour les données de l'échantillon et elle pourrait être moins, plus grande ou deux faces. Par défaut, la fonction mannwhitneyu () utilise la valeur «bilatérale» pour le paramètre «alternatif». Dans cet exemple, nous testerons chaque valeur du paramètre alternatif pour comprendre comment ils fonctionnent avec les données d'échantillonnage. Considérez l'exemple d'exemple suivant:

à partir des statistiques d'importation Scipy
x = [5, 4, 10, 2, 9, 18, 20, 4, 9, 11, 18, 20, 25, 30]
y = [12, 15, 25, 2, 9, 11, 13, 2, 5, 10, 18, 4, 30, 6]
stat, p_value = statistiques.Mannwhitneyu (x, y)
print ("La valeur statistique des échantillons est =", stat)
print ("La valeur p des échantillons est =", p_value)

Ici, nous ne spécifions pas la valeur du paramètre «alternatif». Ceci est fait pour comparer le résultat de la valeur «alternative» par défaut avec toutes les autres options. Voici ce que la fonction mannwhitneyu () renvoie lorsque nous ne spécifions pas la valeur pour un paramètre:

La valeur par défaut pour la fonction mannwhitneyu () est «bilatérale» qui spécifie que les échantillons donnés ne sont pas égaux. Ici, nous donnons la valeur «bilatérale» du paramètre «alternatif» pour comparer les résultats. La même valeur p est retournée comme dans l'exemple précédent. Vérifions le résultat suivant:

à partir des statistiques d'importation Scipy
x = [5, 4, 10, 2, 9, 18, 20, 4, 9, 11, 18, 20, 25, 30]
y = [12, 15, 25, 2, 9, 11, 13, 2, 5, 10, 18, 4, 30, 6]
stat, p_value = statistiques.mannwhitneyu (x, y, alternative = 'bilatéral')
print ("La valeur statistique des échantillons est =", stat)
print ("La valeur p des échantillons est =", p_value)

En comparant les deux sorties, nous pouvons conclure que les résultats sont les mêmes.

La valeur «plus élevée» du paramètre «alternative» vérifie les échantillons par rapport à l'hypothèse que l'échantillon x donné est stochastiquement supérieur à l'échantillon Y donné. Prévoyons la valeur «plus grande» du paramètre «alternatif» pour vérifier la valeur p calculée:

à partir des statistiques d'importation Scipy
x = [5, 4, 10, 2, 9, 18, 20, 4, 9, 11, 18, 20, 25, 30]
y = [12, 15, 25, 2, 9, 11, 13, 2, 5, 10, 18, 4, 30, 6]
stat, p_value = statistiques.mannwhitneyu (x, y, alternative = 'plus grand')
print ("La valeur statistique des échantillons est =", stat)
print ("La valeur p des échantillons est =", p_value)

Voici la sortie de la valeur «plus grande» pour le paramètre «alternatif»:

Comme vous pouvez le voir, la valeur p est différente de la valeur p dans les sorties précédentes.

Enfin, nous avons la valeur «moins» du paramètre «alternatif». La valeur «moins» spécifie que l'échantillon x donné est stochastiquement inférieur à l'échantillon Y donné. Passons à la valeur «moins» du paramètre «alternatif» et voyons le résultat:

à partir des statistiques d'importation Scipy
x = [5, 4, 10, 2, 9, 18, 20, 4, 9, 11, 18, 20, 25, 30]
y = [12, 15, 25, 2, 9, 11, 13, 2, 5, 10, 18, 4, 30, 6]
stat, p_value = statistiques.mannwhitneyu (x, y, alternative = 'moins')
print ("La valeur statistique des échantillons est =", stat)
print ("La valeur p des échantillons est =", p_value)

La sortie de la valeur «moins» du paramètre «alternative» est la suivante:

Conclusion

Ce guide est un aperçu rapide du test de Mann Whitney U qui est également connu sous le nom de Wilcoxon Mann Whitney (MWW), Wilcoxon Rank Sum Test et Wilcoxon Mann Whitney Test. Il s'agit d'un test non paramétrique qui choisit des échantillons indépendants au hasard et les compare à une hypothèse pour spécifier s'ils appartiennent à la même population ou non ou ont la même médiane ou non. De plus, aucune présomption de distribution spécifique n'est conçue pour calculer la valeur p et les statistiques de test. La bibliothèque Scipy fournit la fonction mannwhitneyu () pour effectuer le test de Mann Whitney sur les données données. À l'aide d'exemples simples et faciles, nous avons démontré comment implémenter la fonction mannwhitneyu () dans un programme Python.