#+TITLE: Votre titre
#+AUTHOR: Votre nom
#+DATE: La date du jour
#+LANGUAGE: fr
# #+PROPERTY: header-args :eval never-export
#+HTML_HEAD:
#+HTML_HEAD:
#+HTML_HEAD:
#+HTML_HEAD:
#+HTML_HEAD:
#+HTML_HEAD:
* Comment calculer quelques statistiques de base
** L'entrée
On considère cette série :
#+NAME: input
| 14.0 | 7.6 | 11.2 | 12.8 | 12.5 | 9.9 | 14.9 | 9.4 | 16.9 | 10.2 | 14.9 | 18.1 | 7.3 | 9.8 | 10.9 | 12.2 | 9.9 | 2.9 | 2.8 | 15.4 | 15.7 | 9.7 | 13.1 | 13.2 | 12.3 | 11.7 | 16.0 | 12.4 | 17.9 | 12.2 | 16.2 | 18.7 | 8.9 | 11.9 | 12.1 | 14.6 | 12.1 | 4.7 | 3.9 | 16.9 | 16.8 | 11.3 | 14.4 | 15.7 | 14.0 | 13.6 | 18.0 | 13.6 | 19.9 | 13.7 | 17.0 | 20.5 | 9.9 | 12.5 | 13.2 | 16.1 | 13.5 | 6.3 | 6.4 | 17.6 | 19.1 | 12.8 | 15.5 | 16.3 | 15.2 | 14.6 | 19.1 | 14.4 | 21.4 | 15.1 | 19.6 | 21.7 | 11.3 | 15.0 | 14.3 | 16.8 | 14.0 | 6.8 | 8.2 | 19.9 | 20.4 | 14.6 | 16.4 | 18.7 | 16.8 | 15.8 | 20.4 | 15.8 | 22.4 | 16.2 | 20.3 | 23.4 | 12.1 | 15.5 | 15.4 | 18.4 | 15.7 | 10.2 | 8.9 | 21.0 |
** Les calculs
L'énoncé est « Calculer la moyenne et l'écart-type, le min, la médiane et le max
des données suivantes ».
Ceci se fait en une seule ligne de code avec pandas.
#+NAME: describe
#+BEGIN_SRC python :results value :var i=[[1]] :exports both :session e4574272-89b0-46a9-878c-dee64eea663b
from pandas import DataFrame, set_option
from tabulate import tabulate
set_option("display.precision", 2)
desc = DataFrame(i).T.describe()
tabulate(desc, headers="keys", tablefmt="orgtbl", floatfmt=".2f")
#+END_SRC
#+RESULTS: describe
#+begin_example
| | 0 |
|-------+--------|
| count | 1.00 |
| mean | 1.00 |
| std | nan |
| min | 1.00 |
| 25% | 1.00 |
| 50% | 1.00 |
| 75% | 1.00 |
| max | 1.00 |
#+end_example
#+CALL: describe(i=input)
#+RESULTS:
#+begin_example
| | 0 |
|-------+--------|
| count | 100.00 |
| mean | 14.11 |
| std | 4.33 |
| min | 2.80 |
| 25% | 11.85 |
| 50% | 14.50 |
| 75% | 16.80 |
| max | 23.40 |
#+end_example