Vous avez un grand ensemble de données de valeurs entières et vise à calculer les valeurs p, la probabilité de rencontrer des valeurs plus élevées. Pour déterminer ces probabilités, vous recherchez une distribution théorique qui se rapproche de la distribution de vos données. Cet article explique comment y parvenir à l'aide du package Scipy de Python.
Le module scipy.stats de Scipy fournit une vaste collection de données continues et discrètes. distributions de probabilité. Chaque distribution possède ses propres paramètres qui caractérisent sa forme et son comportement. L'objectif est de trouver la distribution qui correspond le mieux à vos données empiriques sur la base d'un test d'ajustement.
One L’approche consiste à utiliser la somme des erreurs quadratiques (SSE) comme mesure de l’adéquation. SSE calcule la différence au carré entre les fonctions de densité de probabilité empiriques et théoriques. La distribution avec le SSE minimal est considérée comme la meilleure solution.
Le code Python suivant montre comment adapter vos données aux distributions théoriques en utilisant SSE :
<br>importer des pandas as pd<br>import numpy as np<br>import scipy.stats as st<br>import matplotlib.pyplot as plt</p> <p>data = pd.read_csv('data.csv') # Remplacer par vos données fichier</p> <h1>Histogramme du data</h1> <p>plt.hist(data, bins=50)<br>plt.show()</p> <h1>Distributions des candidats</h1> <p>dist_names = ['norm', 'expon', 'gamma', 'beta']</p> <h1>Ajustez chaque distribution et calculez SSE</h1> <p>best_distribution = None<br>min_sse = np.inf<br>pour dist dans dist_names :</p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">dist = getattr(st, dist) params = dist.fit(data) # Calculate SSE sse = np.mean((dist.pdf(data, *params) - np.histogram(data, bins=50, density=True)[0]) ** 2) # Update the best distribution if necessary if sse < min_sse: min_sse = sse best_distribution = dist, params
imprimer (meilleure_distribution[0].nom, best_distribution[1])
Ce code fournit le nom de la distribution la mieux adaptée ainsi que ses paramètres estimés. Vous pouvez utiliser ces paramètres pour calculer les valeurs p et évaluer l'adéquation de la distribution.
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!