0% ont trouvé ce document utile (0 vote)
61 vues9 pages

Visualisation de Données et Statistiques

Le document présente des exemples d'utilisation du module matplotlib pour tracer des fonctions et représenter des données statistiques. Il contient également des exemples d'utilisation du module random pour générer des nombres aléatoires et représenter des lois de probabilité comme la loi binomiale et la loi de Poisson.

Transféré par

Ahmed Amine Doudech
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
61 vues9 pages

Visualisation de Données et Statistiques

Le document présente des exemples d'utilisation du module matplotlib pour tracer des fonctions et représenter des données statistiques. Il contient également des exemples d'utilisation du module random pour générer des nombres aléatoires et représenter des lois de probabilité comme la loi binomiale et la loi de Poisson.

Transféré par

Ahmed Amine Doudech
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Compte Rendu: Probabilité et Statistique

Nom: Doudech Prenom: Ahmed Amine Classe: LSI-A2-01

TP N°1:
Nous allons utiliser matplotlib pour tracer nos fonctions pour importer les modules
matplotlib et numpy, nous écrivons ces deux lignes de code :

1. import [Link] as plt


2. import numpy as np

pour tracer une fonction, vous pouvez utiliser [Link]()

1. x = [Link]([1, 2, 4, 5])
2. y = [Link]([1, 2, 3, 4])
3. [Link](figsize=(8, 5))
4. [Link](x,x**2, lw=3, marker="o", color='red', ls="dotted", label="courbe 1")
5. [Link](y, [Link](y) , lw=3, marker="o", color="green", label="courbe 2")
6. [Link](loc="upper left")
7. [Link]("Statistics of students joining ISSATSo")
8. [Link]("Years")
9. [Link]("Students")
10.
11. [Link]("stiisat")
12.
13. [Link]()
14.

On peut utiliser les attributs :

- lw : pour modifier l'épaisseur du trait


- marker : pour changer le marqueur du point de traçage
- color : pour changer la couleur du trait
- ls ou linestyle : pour changer le style du trait de traçage
- label : donner une étiquette à chaque courbe
- savefig : pour sauvegarder l’image de resultat

1
Exercice 1 :
Le tableau présente le prix des ordinateurs Lenovo et dell durant les cinq derniere
années :

1. import [Link] as plt


2.
3. annee = [2015, 2016, 2017, 2018, 2019, 2020]
4. lenovo = [1000, 1050, 1120, 1200, 1300, 1400]
5. dell = [1040, 1100, 1190, 1220, 1340, 1500]
6.
7. [Link](annee, lenovo, color="red", label="lenovo")
8. [Link](annee, dell, color="green", label="dell")
9. [Link](loc="upper left")
10. [Link]("Prix des ordinateurs")
11. [Link]("Les Années")
12. [Link]("L'évolution des prix des ordinateurs durant les cinq derniéres années")
13. [Link]("Lenovo-vs-Dell")
14. [Link]()

2
Exercice 2 :
1. import [Link] as plt
2. import numpy as np
3. sangammes = [Link](["O", "A", "B", "AB", "Total"])
4. effectifs = [Link]([5, 10, 4, 6, 25])
5.
6. [Link](sangammes, effectifs, color="blue")
7. [Link]("La repartition des groupes sanguines des eleves")
8. [Link]("Groupes sanguines")
9. [Link]("Effectives")
10. [Link]("repart-sang")
11. [Link]()

3
Exercice 3:
1. import [Link] as plt
2. import numpy as np
3.
4. Labels = ["Action", "Aventure", "Sport", "Strategie", "Jeu de role"]
5. Colors = ["yellowgreen", "gold", "lightskyblue", "lightcoral", "blue"]
6. Telechargement = [Link]([1400, 600, 506, 1608, 730])
7.
8. [Link](Telechargement, labels=Labels, colors=Colors, autopct="%1.1f")
9. [Link]()
10. [Link]("La repsentation des telechargement de jeux par genre")
11. [Link]()

Représenter ces données sur un histogramme en découpent l'axe des absc en train
intervalles selon le taux de de 60 à 100 et de 120 à 151

4
TP N°2 : Utilisation de module random
Ont peut utiliser random pour générer des valeur aléatoires, on a les fonctions
randint et randrange :

randint(x, y) : retourne un entier entre x et y, avec y inclus

randrange(x, y) : retourne un entier entre x et y, avec y exclus

1. import random
2. x = [Link](1, 10); # variable x appartient à l’intervalle I=[1, 10]
3. y = [Link](10); # variable y appartient à l’intervalle I=[1, 10
5. print(x)
6. print(y)

random(): Retourne un nombre aléatoire compris entre 0 (inclus) et 1 (exclus)

uniform(x, y) : Retourne un nombre aléatoire compris entre 1 (inclus) et 10 (inclus)

1. x = [Link]()
2. print(x)
3. y = [Link](1, 10)
4. print(y)

On peut utiliser [Link](x) pour trouver la plus grande valeur entière inférieur ou
égale à un nombre donné x.

1. import math
2. [Link](y)

Exemple: Ecrire la partie entière d'un nombre aléatoire dans l'intervalle [0, 16]

Méthode 1 : Méthode 2 :
1. import random 1. import random
2. [Link](0, 16) 2. import math
3. [Link]([Link](0, 17))

Application des méthodes de module random sur les listes :

1. a = ["a", "b", "c", "d", "e", "f", "g", "h", "i"]


2.
3. print([Link](a))
4. [Link](a) # shuffles the list
5. print(a)
6. print([Link](a))
7.
8. b = [Link](a, 5) # a random sample from the list a
9. print(b)

5
choice(a): retourne un element aleatoire de la liste a

shuffle(a): modifie la liste directement et mélange aléatoirement les éléments de la


liste a

sample(a, n) : retourne une nouvelle liste contenant n éléments choisis de manière


aléatoire parmi les éléments de la liste a sans remplacement

Definition d’une fonction uniforme :

1. import random
2. import math
3. def uniforme(a, b):
4. return (a + [Link]([Link]() * ((b - a) + 1)))

Traçage d’une fonction uniforme:

1. import [Link] as plt


2.
3. a = 1
4. b = 6
5. n = b - a + 1
6.
7. x = list(range(a, b + 1))
8. y = [1 / n for _ in x]
9.
10. [Link](x,y, ".", marker="x") # "." means there's no curve in the plot (only points)
11.
12. [Link]()

6
Traçage de distribution de la loi binomiale:

1. import [Link] as plt


2. import math
3.
4. def binomfdp(n, p, k):
5. c = [Link](n)/[Link](k)*[Link](n-k)
6. x = c* p ** k * (1-p) **(n-k)
7. return x
8.
9. def binomfep(n, p, k):
10. s = binomfdp(n, p, 0)
11. for i in range(k):
12. s = s + binomfdp(n, p, i + 1)
13. return s
14. # Paramètres de la loi binomiale
15. n = 20 # Nombre d'essais
16. p = 0.5 # Probabilité
17.
18. # Calcul des probabilités pour chaque valeur de la variable aléatoire
19. x = [i for i in range(1, n+1)]
20. y = [binomfdp(n, p, k) for k in range(1, n + 1)]
21. # Tracer la loi binomiale
22. [Link](x, y, label='Loi binomiale (n=20, p=0.5)', alpha=0.7)
23. [Link]('Distribution de la loi binomiale')
24. [Link]('Valeurs de la variable aléatoire')
25. [Link]('Probabilité')
26. [Link]()
27. [Link](True)
28. [Link]()

7
TP N°3:
Distribution binomiale pour n= 10, p=0.5

1. from math import factorial


2. import [Link] as plt
3. import random as rd
4. import numpy as np
5. import math
6. from math import factorial
7.
8. def binomfdp(n, p, k):
9. c = factorial(n) / (factorial(k) * factorial(n - k))
10. probability = c * (p ** k) * ((1 - p) ** (n - k))
11. return probability
12.
13. def binomfrp(n, p, k):
14. o = binomfdp(n, p, 0)
15. for i in range(k):
16. o += binomfdp(n, p, i + 1)
17. return o
18.
19. n = 10
20. p = 0.5
21. k = n
22.
23. x = [Link](0, k + 1)
24. binomial_pmf = [binomfdp(n, p, i) for i in x]
25.
26. [Link](x, binomial_pmf, color="red")
27.
28. [Link]('Number of Successes')
29. [Link]('Probability')
30. [Link](f'Binomial Distribution (n={n}, p={p})')
31. [Link]()

8
Distribution loi de poisson :

1. from functools import partial


2. import math
3. import [Link] as plt
4.
5. def poisson_pmf(k, lambda_parameter):
6. return (lambda_parameter**k * [Link](-lambda_parameter)) / [Link](k)
7.
8. l= 5
9.
10. x = [i for i in range(20)]
11.
12. poisson_pmf1 = [poisson_pmf(i, l) for i in x]
13.
14. [Link](x, poisson_pmf1, color='red', label=f'Poisson λ={l}')
15. [Link]('Poisson Distribution')
16. [Link]('X')
17. [Link]('Probability')
18. [Link]()
19. [Link]()

Vous aimerez peut-être aussi