Comment calculer & Tracer un CDF en Python



Vous pouvez utiliser la syntaxe de base suivante pour calculer la fonction de distribution cumulative (CDF) en Python :

#sort data
x = np.sort(data)

#calculate CDF values
y = 1. * np.arange(len(data)) / (len(data) - 1)

#plot CDF
plt.plot(x, y)

Les exemples suivants montrent comment utiliser cette syntaxe dans la pratique.

Exemple 1 : CDF de distribution aléatoire

Le code suivant montre comment calculer et tracer une fonction de distribution cumulative (CDF) pour un échantillon aléatoire de données en Python :

import numpy as np
import matplotlib.pyplot as plt

#define random sample of data
data = np.random.randn(10000)

#sort data
x = np.sort(data)

#calculate CDF values
y = 1. * np.arange(len(data)) / (len(data) - 1)

#plot CDF
plt.plot(x, y)
plt.xlabel('x')

L’axe des x affiche les valeurs des données brutes et l’axe des y affiche les valeurs CDF correspondantes.

Exemple 2 : CDF de distribution normale

Si vous souhaitez tracer la fonction de distribution cumulative d’une distribution connue (telle que la distribution normale ), vous pouvez utiliser les fonctions suivantes de la bibliothèque SciPy :

import numpy as np
import scipy
import matplotlib.pyplot as plt

#generate data from normal distribution
data = np.random.randn(1000)

#sort data
x = np.sort(data)

#calculate CDF values
y = scipy.stats.norm.cdf(x)

#plot CDF
plt.plot(data_sorted, norm_cdf)

#plot CDF
plt.plot(x, y)
plt.xlabel('x')

Ressources additionnelles

CDF ou PDF : quelle est la différence ?
Comment créer une courbe en cloche en Python
Comment calculer les scores Z en Python

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *