cz1702
Messages postés119Date d'inscriptionmercredi 23 juillet 2003StatutMembreDernière intervention 6 novembre 2008
-
5 nov. 2008 à 10:32
cz1702
Messages postés119Date d'inscriptionmercredi 23 juillet 2003StatutMembreDernière intervention 6 novembre 2008
-
6 nov. 2008 à 15:59
Bonjour,
Je souhaiterai calculer l'écart moyen (ou la croissance moyenne) entre une série de valeur.
Par exemple pour les valeurs 1,5,9,13,17,21,25 l'écart moyen est 4.
Je ne sais pas si j'emploie les bons termes mais j'aimerais trouver cette valeur (en tout cas ce n'est pas l'écart type).
L'idéal serait de la trouver directement avec une requête SQL (les valeurs sont dans une table mysql) soit à défaut par PHP.
Quelqu'un saurait il comment trouver cette valeur ?
neigedhiver
Messages postés2480Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention14 janvier 201119 5 nov. 2008 à 16:22
Salut,
L'algorithme est assez simple :
L'écart moyen, c'est la somme des écart divisée par leur nombre.
La somme des écarts, c'est MAX - MIN : (5-1) + (9-5) ... + (25-21), après simplification, 25-1.
Leur nombre, c'est le nombre d'éléments moins 1 : 7-1 = 6
24/6 = 4.
En une seule requête SQL, ça doit être possible...
SELECT ((MAX(champ) - MIN(champ)) / (COUNT(champ) - 1)) FROM table;
Non testé, mais ça devrait mettre sur la voie...
<hr size="2" width="100%" />Neige
N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
cz1702
Messages postés119Date d'inscriptionmercredi 23 juillet 2003StatutMembreDernière intervention 6 novembre 20083 6 nov. 2008 à 09:31
Merci,
Mais j'ai pris l'exemple d'une suite parfaite mais si on prend la suite1,5,12,16,20.
L'écart moyen est (4+7+4+4)/4=4.75 avec ta formule j'aurais eu 21/4=5.25.
En fait le plus dur c'est de trouver 4+7+4+4 c'est à dire 19 avec la suite cité (je pense que je vas devoir passer par php ).
neigedhiver
Messages postés2480Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention14 janvier 201119 6 nov. 2008 à 10:37
Euh moi, j'ai pris des exemples de suites "imparfaites" comme celle que tu cites. Et je trouve pareil... Démonstration.
Somme des écarts :
Se = (5-1) + (12-5) + (16-12) + (20-16)
Se = 20 -16 + 16 -12 + 12 - 5 + 5 - 1
Se = 20 - 1
Se = 19
Le nombre d'écarts est égale au nombre de termes moins 1
Ne = 5 - 1
Ne = 4
Moyenne :
M = 19 / 4
M = 4,75
J'ai dit que la somme des écarts était égale à MAX - MIN, pas MAX + MIN... Tu as mal lu ce que j'ai écrit.
Donc ma formule est correcte, c'est sûr (je l'avais vérifiée, c'est des maths niveau collège). Donc ma requête devrait être correcte également, mais nécessite d'être testée (à cause des fonctions d'agrégation tout ça, des fois on a des surprises quand on connait pas tout sur le bout des doigts).
<hr size="2" width="100%" />Neige
N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...