Skip site navigation (1) Skip section navigation (2)

Calcul de médiane

From: Sébastien DINOT <sebastien(dot)dinot(at)free(dot)fr>
To: pgsql-fr-generale(at)postgresql(dot)org
Subject: Calcul de médiane
Date: 2007-02-21 10:12:13
Message-ID: 1172052733.45dc1afd99d1f@imp.free.fr (view raw or flat)
Thread:
Lists: pgsql-fr-generale
Bonjour à tous,

Je souhaite calculer la médiane d'un ensemble de valeurs et je ne vois
pas comment le faire simplement. Une âme charitable aurait-elle une
solution à me proposer ?

Pour mémoire, la médiane est différente de la moyenne :

http://fr.wikipedia.org/wiki/M%C3%A9diane_(centre) :

----------------------------------------------------------------------
Médiane (centre)

En théorie des probabilités et en statistiques, la médiane est un nombre
qui divise en deux parties l'échantillon, la population ou la
distribution de probabilités. Chaque partie contient le même nombre de
valeurs.

Dans une liste finie de valeurs, il suffit d'ordonner les valeurs dans
un ordre croissant et de choisir la valeur au milieu comme médiane. S'il
y a un nombre pair de valeurs, la moyenne arithmétique est souvent
prise.

Contrairement à la moyenne arithmétique, la valeur médiane permet
d'atténuer l'influence perturbatrice des valeurs extrêmes enregistrées
lors de circonstances exceptionnelles.

[...]

Médianes en statistiques descriptives

La médiane est principalement utilisée pour les distributions
asymétriques, car elle les représente mieux que la moyenne arithmétique.
Considérons l'ensemble { 1, 2, 2, 2, 3, 9 }. La médiane est 2, tout
comme le mode, ce qui est une meilleure mesure de tendance centrale que
la moyenne arithmétique de 3.166….

Le calcul de la médiane est couramment effectué pour représenter
différentes distributions et elle est facile à comprendre, tout comme à
calculer. Elle est aussi plus robuste que la moyenne en présence de
valeurs extrêmes.

----------------------------------------------------------------------

Par exemple, voici une distribution de 200 valeurs :

 Valeur | Occurrences
--------+-------------
   0.00 |    5
  10.00 |   45
  12.00 |    1
  20.00 |   75
  25.00 |   19
  30.00 |   25
  50.00 |   29
 480.00 |    1

La moyenne est de 25.585.

La médiane est de 20 (100 valeurs sont <= 20 et 100 valeurs sont >= 20).

On m'a déjà signalé une solution en PL/R :

http://www.joeconway.com/plr/doc/plr-aggregate-funcs.html

mais je préfèrerais passer par une requête SQL ou une procédure stockée
en PL/PgSQL.

Je vous remercie par avance,

Sébastien

--
Sébastien Dinot, sebastien(dot)dinot(at)free(dot)fr
http://sebastien.dinot.free.fr/
Ne goûtez pas au logiciel libre, vous ne pourriez plus vous en passer !

Responses

pgsql-fr-generale by date

Next:From: Stephane BortzmeyerDate: 2007-02-21 11:22:58
Subject: Re: Calcul de médiane
Previous:From: Guillaume LelargeDate: 2007-02-21 09:22:19
Subject: Re: Conseil Livre

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group