Exercice2
Reprendre l'exercice précédent (). Mais cette fois-ci on vous demande:
1) - Écrire un programme en Python basé sur la bibliothèque numpy permettant de générer la série statistiques (xi , ni)i associée à données colléctées (avec xi est la valeur de la note (score) et ni est l'efectif associé au score xi. )
2) - Écrire un programme en Python numpy et matplotlib permettant de tracer la courbe des effectifs.
Solution
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
import numpy as np import matplotlib.pyplot as plt # Échantillon de scores des étudiants scores = np.array([85, 92, 78, 90, 88, 76, 85, 89, 95, 79, 93, 87, 84, 91, 88, 82, 86, 80, 89, 94]) # 1) Déterminer la série statistique (xi, ni) unique_scores, counts = np.unique(scores, return_counts=True) # Affichage de la série statistique print("Série statistique (xi, ni):") for score, count in zip(unique_scores, counts): print(f"{score} : {count}") # 2) Tracer la courbe des effectifs plt.plot(unique_scores, counts, marker='o', linestyle='-') plt.xlabel('Notes (xi)') plt.ylabel('Effectifs (ni)') plt.title('Courbe des effectifs') plt.grid(True, linestyle='--', alpha=0.6) plt.show() |
Explication du code:
- np.unique(scores, return_counts=True) : fournit les valeurs uniques (xi) et leurs effectifs associés (ni) dans l'échantillon de scores.
- Affichage de la série statistique (xi, ni) : en parcourant les tableaux unique_scores et counts.
- Matplotlib (plt.plot()) : permet de créer la courbe qui représente les effectifs de chaque note. Le résultat sera une courbe des effectifs
La sortie du programme affiche le graphique des effectifs:
Younes Derfoufi
CRMEF OUJDA