Maison >développement back-end >Tutoriel Python >Modules mathématiques en python: statistiques
Python statistics
fournit des capacités de données statistiques de données puissantes pour nous aider à comprendre rapidement les caractéristiques globales des données, telles que la biostatistique et l'analyse commerciale. Au lieu de regarder les points de données un par un, regardez simplement des statistiques telles que la moyenne ou la variance pour découvrir les tendances et les fonctionnalités des données d'origine qui peuvent être ignorées et comparer les grands ensembles de données plus facilement et efficacement.
Ce tutoriel expliquera comment calculer la moyenne et mesurer le degré de dispersion de l'ensemble de données. Sauf indication contraire, toutes les fonctions de ce module prennent en charge le calcul de la valeur moyenne à l'aide de la fonction mean()
plutôt que de simplement additionner la moyenne. Les nombres de points flottants peuvent également être utilisés.
import random import statistics from fractions import Fraction as F int_values = [random.randrange(100) for x in range(9)] frac_values = [F(1, 2), F(1, 3), F(1, 4), F(1, 5), F(1, 6), F(1, 7), F(1, 8), F(1, 9)] mix_values = [*int_values, *frac_values] print(statistics.mean(mix_values)) # 929449/42840 print(statistics.fmean(mix_values)) # 21.69582166199813
En commençant par Python 3.8, vous pouvez utiliser les fonctions geometric_mean(data, weights=None)
et harmonic_mean(data, weights=None)
pour calculer la moyenne géométrique et la moyenne harmonique.
La moyenne géométrique est le résultat de la division du produit de toutes les n valeurs dans les données à la racine de la puissance N. En raison d'erreurs de points flottants, les résultats peuvent être légèrement biaisés dans certains cas. Une application de la moyenne géométrique est de calculer rapidement le taux de croissance annuel composé. Par exemple, les ventes de quatre ans d'une entreprise sont respectivement de 100, 120, 150 et 200. Les taux de croissance en trois ans étaient respectivement de 20%, 25% et 33,33%. Le taux de croissance moyen des ventes d'une entreprise sera exprimé plus précisément en moyenne géométrique de pourcentages. La moyenne arithmétique donne toujours un taux de croissance incorrect et légèrement plus élevé.
import statistics growth_rates = [20, 25, 33.33] print(statistics.mean(growth_rates)) # 26.11 print(statistics.geometric_mean(growth_rates)) # 25.542796263143476
La moyenne harmonique n'est que la moyenne réciproque de la moyenne arithmétique du réciproque des données. Si les données contient des nombres zéro ou négatifs, une exception StatisticsError
est lancée.
La moyenne harmonique est utilisée pour calculer la moyenne des ratios et des taux, tels que le calcul de la vitesse moyenne, de la densité ou de la résistance parallèle. Le code suivant calcule la vitesse moyenne lorsque quelqu'un parcourt une distance fixe (voici 100 km).
import statistics speeds = [30, 40, 60] distance = 100 total_distance = len(speeds) * distance total_time = 0 for speed in speeds: total_time += distance / speed average_speed = total_distance / total_time print(average_speed) # 39.99999999999999 print(statistics.harmonic_mean(speeds)) # 40.0
Il convient de noter que lorsqu'il y a plusieurs valeurs avec la même fréquence d'occurrence, la fonction multimode()
dans Python 3.8 peut renvoyer plusieurs résultats.
import statistics favorite_pet = ['cat', 'dog', 'dog', 'mouse', 'cat', 'cat', 'turtle', 'dog'] print(statistics.multimode(favorite_pet)) # ['cat', 'dog']
Calculez la médiane
Le calcul de la valeur centrale avec un mode peut être trompeur. Comme mentionné précédemment, le mode est toujours le point de données le plus fréquent, quelles que soient les autres valeurs de l'ensemble de données. Une autre façon de déterminer la position centrale consiste à utiliser la fonction pvariance(data, mu=None)
pour calculer la variance de la population d'un ensemble de données donné.
Le deuxième paramètre de cette fonction est facultatif. Si une valeur de mu est fournie, elle doit être égale à la moyenne des données données. Si cette valeur est manquante, la moyenne est calculée automatiquement. Cette fonction est utile lorsque vous souhaitez calculer la variance de toute la population. Si vos données ne sont qu'un échantillon de la population, vous pouvez utiliser la fonction variance(data, xBar=None)
pour calculer la variance de l'échantillon, où xBar
est la moyenne d'un échantillon donné, qui est automatiquement calculé s'il n'est pas fourni.
L'écart type de population et l'écart type de l'échantillon peuvent être calculés à l'aide des fonctions pstdev(data, mu=None)
et stdev(data, xBar=None)
respectivement.
import random import statistics from fractions import Fraction as F int_values = [random.randrange(100) for x in range(9)] frac_values = [F(1, 2), F(1, 3), F(1, 4), F(1, 5), F(1, 6), F(1, 7), F(1, 8), F(1, 9)] mix_values = [*int_values, *frac_values] print(statistics.mean(mix_values)) # 929449/42840 print(statistics.fmean(mix_values)) # 21.69582166199813
Comme le montre l'exemple ci-dessus, une variance plus petite signifie que plus de points de données sont plus proches de la valeur de la moyenne. Vous pouvez également calculer l'écart type des décimales et des fractions.
Résumé
Dans le dernier tutoriel de cette série, nous avons appris les différentes fonctions fournies dans le module statistics
. Vous avez peut-être remarqué que les données fournies à la fonction sont triées dans la plupart des cas, mais elles ne doivent pas être triées. Dans ce tutoriel, j'ai utilisé des listes triées car elles facilitent la compréhension de la relation entre les valeurs renvoyées par différentes fonctions et les données d'entrée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!