diff --git a/PreStSauveur/Programmation/6-Statistiques.html b/PreStSauveur/Programmation/6-Statistiques.html new file mode 100644 index 0000000..c32f639 --- /dev/null +++ b/PreStSauveur/Programmation/6-Statistiques.html @@ -0,0 +1,13455 @@ + + + + +6-Statistiques + + + + + + + + + + + + + + + + + + + + + + + +
+
+ +
+
+
+

Statistiques

Le but de ce TP est de traiter la partie statistique descriptive du programme de 2nd. Les définitions données font donc partie du cours et sont à connaître par coeur.

+

Statistiques descriptives

Vocabulaire

    +
  • La population d’une série statistique est l’ensemble des éléments appelés individus sur lesquels portent l’étude statistique.
  • +
  • Le caractère d’une série statistique est la propriété étudiée sur chaque individu. Un caractère peut être quantitatif (mesurable comme la taille) ou qualitatif (non mesurable comme la couleur des cheveux).
  • +
  • L’effectif d’un caractère est le nombre d’individu qui partagent ce caractère.
  • +
  • L'effectif total est le nombre total d'individu.
  • +
  • La fréquence d’un caractère est égale à l’effectif du caractère divisé par l’effectif total.
  • +
+

Les statistiques descriptives ont pour but de décrire et d'analyser des données (ou série statisque) pour les résumer ou les comparer entre elles.

+

Voici quelques séries de données sur lesquels nous allons pouvoir travailler. Ces trois séries concernent des caractéristiques différentes des voitures garées sur un parking.

+ +
+
+
+
+
+
In [1]:
+
+
+
# Nombre de passagers
+passagers = [4, 1, 4, 1, 2, 1, 5, 0, 3, 4, 0, 4, 0, 0, 4, 3, 2, 3, 5, 2, 5, 4, 1, 2, 1]
+# Kilomètre au compteur
+kilometres = [68806, 136429, 67417, 44743, 166108, 63686, 133615,
+              97402, 131932, 60947, 166706, 194451, 103493, 71308, 69805]
+# Couleur des voitures
+couleurs = ['grise', 'noire', 'grise', 'rouge',
+             'blanche', 'blanche', 'rouge', 'bleu',
+             'bleu', 'grise', 'noire', 'verte',
+             'noire', 'rouge', 'grise', 'verte',
+             'grise', 'grise', 'verte', 'grise']
+
+ +
+
+
+ +
+
+
+
+
    +
  1. Pour chacune des ces séries statistiques, expliquer à quoi correspond la population, les individus, le caractère.
  2. +
  3. Quel est l'effectif total de chacun de ces séries?
  4. +
+ +
+
+
+
+
+
+

Indicateurs

Les indicteurs suivant vont permettre de résumer les séries statistiques. Ils ne peuvent être calculés que quand le caractère étudié est quantitatif.

+
    +
  • Etendu est égale à la différence entre le maximum et le minimum.
  • +
  • La moyenne, $\bar{x}$, est égale à la somme de toutes les valeurs divisée par l'effectif total.
  • +
  • La médiane, Me, est une valeur qui sépare la série en 2 groupes de même effectif:
      +
    • un groupe dont les valeurs sont inférieurs ou égales à la médiane
    • +
    • un groupe dont les valeurs sont supérieurs ou égales à la médiane
    • +
    +
  • +
  • Le premier quartile, $Q_1$, d’une série statistique est la plus petite valeur des termes de la série pour laquelle au moins un quart des données sont inférieures ou égales à $Q_1$.
  • +
  • Le troisième quartile, $Q_3$, d’une série statistique est la plus petite valeur des termes de la série pour laquelle au moins trois quarts des données sont inférieures ou égales à $Q_3$.
  • +
+ +
+
+
+
+
+
+
    +
  1. Pour chaque série, quand c'est possible, calculer les 5 indicateurs.
  2. +
  3. Ecrire un algorithme expliquant comment calculer chaqu'un de ces indicateurs.
  4. +
  5. En vous aidant du mémo sur les listes, traduire vos algorithmes en Python
  6. +
+ +
+
+
+
+
+
+

Mémo sur les listes

Quelques précisions autour de la manipulation des listes avec Python

+ +
+
+
+
+
+
In [11]:
+
+
+
L = [5, 2, 1, 2, 4, 5, 5]
+
+ +
+
+
+ +
+
+
+
+
    +
  • len: calculer le nombre d'éléments dans la liste
  • +
+ +
+
+
+
+
+
In [5]:
+
+
+
print(len(L))
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
7
+
+
+
+ +
+
+ +
+
+
+
+
    +
  • sum: calculer la somme des éléments de la liste
  • +
+ +
+
+
+
+
+
In [6]:
+
+
+
print(sum(L))
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
24
+
+
+
+ +
+
+ +
+
+
+
+
    +
  • sorted: trier les éléments de la liste
  • +
+ +
+
+
+
+
+
In [13]:
+
+
+
print(sorted(L))
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
[1, 2, 2, 4, 5, 5, 5]
+
+
+
+ +
+
+ +
+
+
+
+
    +
  • Récupérer le i-ième élément de la liste (/!\ on commence à compter à partir de 0)
  • +
+ +
+
+
+
+
+
In [15]:
+
+
+
# Le premier élément de la liste
+print(L[0])
+# le 3e élément de la liste
+print(L[2])
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
5
+1
+
+
+
+ +
+
+ +
+
+
+
+
    +
  • Faire une boucle sur tous les éléments de la liste
  • +
+ +
+
+
+
+
+
In [16]:
+
+
+
for x in L:
+    print(x)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
5
+2
+1
+2
+4
+5
+5
+
+
+
+ +
+
+ +
+
+
+
In [ ]:
+
+
+
 
+
+ +
+
+
+ +
+
+
+ + + + + + diff --git a/PreStSauveur/Programmation/6-Statistiques.ipynb b/PreStSauveur/Programmation/6-Statistiques.ipynb new file mode 100644 index 0000000..6f849b8 --- /dev/null +++ b/PreStSauveur/Programmation/6-Statistiques.ipynb @@ -0,0 +1,257 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Statistiques\n", + "\n", + "Le but de ce TP est de traiter la partie **statistique descriptive** du programme de 2nd. Les définitions données font donc partie du cours et sont à connaître par coeur.\n", + "\n", + "## Statistiques descriptives\n", + "\n", + "### Vocabulaire\n", + "\n", + "- La **population** d’une série statistique est l’ensemble des éléments appelés **individus** sur lesquels portent l’étude statistique.\n", + "- Le **caractère** d’une série statistique est la propriété étudiée sur chaque individu. Un caractère peut être **quantitatif** (mesurable comme la taille) ou **qualitatif** (non mesurable comme la couleur des cheveux).\n", + "- L’**effectif** d’un caractère est le nombre d’individu qui partagent ce caractère.\n", + "- L'**effectif** total est le nombre total d'individu.\n", + "- La **fréquence** d’un caractère est égale à l’effectif du caractère divisé par l’effectif total.\n", + "\n", + "Les statistiques descriptives ont pour but de décrire et d'analyser des données (ou série statisque) pour les résumer ou les comparer entre elles.\n", + "\n", + "Voici quelques séries de données sur lesquels nous allons pouvoir travailler. Ces trois séries concernent des caractéristiques différentes des voitures garées sur un parking." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "# Nombre de passagers\n", + "passagers = [4, 1, 4, 1, 2, 1, 5, 0, 3, 4, 0, 4, 0, 0, 4, 3, 2, 3, 5, 2, 5, 4, 1, 2, 1]\n", + "# Kilomètre au compteur\n", + "kilometres = [68806, 136429, 67417, 44743, 166108, 63686, 133615,\n", + " 97402, 131932, 60947, 166706, 194451, 103493, 71308, 69805]\n", + "# Couleur des voitures\n", + "couleurs = ['grise', 'noire', 'grise', 'rouge',\n", + " 'blanche', 'blanche', 'rouge', 'bleu',\n", + " 'bleu', 'grise', 'noire', 'verte',\n", + " 'noire', 'rouge', 'grise', 'verte',\n", + " 'grise', 'grise', 'verte', 'grise']" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "1. Pour chacune des ces séries statistiques, expliquer à quoi correspond la population, les individus, le caractère.\n", + "2. Quel est l'effectif total de chacun de ces séries?" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Indicateurs\n", + "\n", + "Les indicteurs suivant vont permettre de résumer les séries statistiques. Ils ne peuvent être calculés que quand le caractère étudié est quantitatif. \n", + "\n", + "- **Etendu** est égale à la différence entre le **maximum** et le **minimum**.\n", + "- La **moyenne**, $\\bar{x}$, est égale à la somme de toutes les valeurs divisée par l'effectif total.\n", + "- La **médiane, Me**, est une valeur qui sépare la série en 2 groupes de même effectif:\n", + " - un groupe dont les valeurs sont inférieurs ou égales à la médiane\n", + " - un groupe dont les valeurs sont supérieurs ou égales à la médiane\n", + "- Le **premier quartile**, $Q_1$, d’une série statistique est la plus petite valeur des termes de la série pour laquelle au moins un quart des données sont inférieures ou égales à $Q_1$.\n", + "- Le **troisième quartile**, $Q_3$, d’une série statistique est la plus petite valeur des termes de la série pour laquelle au moins trois quarts des données sont inférieures ou égales à $Q_3$." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "3. Pour chaque série, quand c'est possible, calculer les 5 indicateurs.\n", + "4. Ecrire un algorithme expliquant comment calculer chaqu'un de ces indicateurs.\n", + "5. En vous aidant du mémo sur les listes, traduire vos algorithmes en Python" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Mémo sur les listes\n", + "\n", + "Quelques précisions autour de la manipulation des listes avec Python" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "L = [5, 2, 1, 2, 4, 5, 5]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- `len`: calculer le nombre d'éléments dans la liste" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "7\n" + ] + } + ], + "source": [ + "print(len(L))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- `sum`: calculer la somme des éléments de la liste" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "24\n" + ] + } + ], + "source": [ + "print(sum(L))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- `sorted`: trier les éléments de la liste" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1, 2, 2, 4, 5, 5, 5]\n" + ] + } + ], + "source": [ + "print(sorted(L))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- Récupérer le i-ième élément de la liste (**/!\\ on commence à compter à partir de 0**)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "5\n", + "1\n" + ] + } + ], + "source": [ + "# Le premier élément de la liste\n", + "print(L[0])\n", + "# le 3e élément de la liste\n", + "print(L[2])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- Faire une boucle sur tous les éléments de la liste" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "5\n", + "2\n", + "1\n", + "2\n", + "4\n", + "5\n", + "5\n" + ] + } + ], + "source": [ + "for x in L:\n", + " print(x)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.2" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/PreStSauveur/Programmation/6-statistiques-prepa.ipynb b/PreStSauveur/Programmation/6-statistiques-prepa.ipynb new file mode 100644 index 0000000..8886644 --- /dev/null +++ b/PreStSauveur/Programmation/6-statistiques-prepa.ipynb @@ -0,0 +1,146 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "import random" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Préparation des données stats" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['grise',\n", + " 'noire',\n", + " 'grise',\n", + " 'rouge',\n", + " 'blanche',\n", + " 'blanche',\n", + " 'rouge',\n", + " 'bleu',\n", + " 'bleu',\n", + " 'grise',\n", + " 'noire',\n", + " 'verte',\n", + " 'noire',\n", + " 'rouge',\n", + " 'grise',\n", + " 'verte',\n", + " 'grise',\n", + " 'grise',\n", + " 'verte',\n", + " 'grise']" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "couleurs = [\"rouge\", \"noire\", \"blanche\", \"grise\", \"verte\", \"bleu\"]\n", + "rand_color = [random.choice(couleurs) for _ in range(20)]\n", + "rand_color" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[68806,\n", + " 136429,\n", + " 67417,\n", + " 44743,\n", + " 166108,\n", + " 63686,\n", + " 133615,\n", + " 97402,\n", + " 131932,\n", + " 60947,\n", + " 166706,\n", + " 194451,\n", + " 103493,\n", + " 71308,\n", + " 69805]" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "kms = [int(random.gauss(100000, 50000)) for _ in range(15)]\n", + "kms" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[5, 2, 1, 2, 4, 5, 5]" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "nbr_passagers = list(range(6))\n", + "passagers = [random.choice(nbr_passagers) for _ in range(7)]\n", + "passagers" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.2" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}