Comment calculer une médiane dans Access

Le
jymgo
j'ai élaboré une base de données pour gérer des statistiques de golf. Plutot
que d'exporter le résultat d'une requête dans XL, je voudrai calculer
directement une médiane dans access, qui pourrait varier selon la période
étudiée.
Merci d'avance
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Eric
Le #6588961
Bonjour,

Regardes ici : http://www.mvps.org/accessfr/queries/qry0019.htm

j'ai élaboré une base de données pour gérer des statistiques de golf. Plutot
que d'exporter le résultat d'une requête dans XL, je voudrai calculer
directement une médiane dans access, qui pourrait varier selon la période
étudiée.
Merci d'avance


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

pbserv
Le #6593531
bonjour,

A savoir que la formule proposée n'est pas exacte car elle ne réalise
pas d'interpolation.
Exemple sur les valeurs : 1, 3, 8, 9
La médiane calculée est 3 alors qu'elle devrait être de 5,5...

Cordialement,

Philippe

On 10 mai, 09:17, Eric
Bonjour,

Regardes ici :http://www.mvps.org/accessfr/queries/qry0019.htm


j'ai élaboré une base de données pour gérer des statistiques de golf. Plutot
que d'exporter le résultat d'une requête dans XL, je voudrai calcule r
directement une médiane dans access, qui pourrait varier selon la pé riode
étudiée.
Merci d'avance


--
A+
Erichttp://www.mpfa.info/
Archives :http://groups.google.fr/group/microsoft.public.fr.access?hl=fr=



Eric
Le #6593741
Bonjour,

Et en la modifiant comme suit :

Public Function fnXPercentile(FName As String, _
TName As String, _
X As Double) As Double

' FName = Nom du champ
' TName = Nom de la table
' x = percentile décimal (0.68 for 68%)

' Retourne la valeur minimale pour laquelle
' x% des valeurs y sont inférieures ou égales
' extrapolation dans le cas d'un nb d'obs. pair

Dim ValMin As Double, ValMax As Double
ValMin = DMin(FName, TName, _
"DCount(""*"", """ & TName & """, """ & FName & _
"<="" & [" & FName & " ]) >= " & _
Replace(X * DCount("*", TName), ",", "."))
ValMax = DMin(FName, TName, _
"DCount(""*"", """ & TName & """, """ & FName & _
"<="" & [" & FName & " ]) > " & _
Replace(X * DCount("*", TName), ",", "."))
fnXPercentile = (ValMin + ValMax) / 2

End Function

A tester.

bonjour,

A savoir que la formule proposée n'est pas exacte car elle ne réalise
pas d'interpolation.
Exemple sur les valeurs : 1, 3, 8, 9
La médiane calculée est 3 alors qu'elle devrait être de 5,5...

Cordialement,

Philippe

On 10 mai, 09:17, Eric
Bonjour,

Regardes ici :http://www.mvps.org/accessfr/queries/qry0019.htm


j'ai élaboré une base de données pour gérer des statistiques de golf. Plutot
que d'exporter le résultat d'une requête dans XL, je voudrai calculer
directement une médiane dans access, qui pourrait varier selon la période
étudiée.
Merci d'avance
--

A+
Erichttp://www.mpfa.info/
Archives :http://groups.google.fr/group/microsoft.public.fr.access?hl=fr




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr



pbserv
Le #6594151
re bonjour,

Qualité des résultats : bon a priori
Compacité du code : très bon
performance : y'a plus rapide !

Félicitation,

Philippe

On 11 mai, 10:11, Eric
Bonjour,

Et en la modifiant comme suit :

Public Function fnXPercentile(FName As String, _
                 TName As String, _
                 X As Double) As Double

'   FName = Nom du champ
'   TName = Nom de la table
'   x = percentile décimal (0.68 for 68%)

'   Retourne la valeur minimale pour laquelle
'   x% des valeurs y sont inférieures ou égales
'   extrapolation dans le cas d'un nb d'obs. pair

     Dim ValMin As Double, ValMax As Double
     ValMin = DMin(FName, TName, _
              "DCount(""*"", """ & TName & """, """ & FName & _
              "<="" & [" & FName & " ]) >= " & _
              Replace(X * DCount("*", TName), ",", "."))
     ValMax = DMin(FName, TName, _
              "DCount(""*"", """ & TName & """, """ & FName & _
              "<="" & [" & FName & " ]) > " & _
              Replace(X * DCount("*", TName), ",", "."))
     fnXPercentile = (ValMin + ValMax) / 2

End Function

A tester.






bonjour,

A savoir que la formule proposée n'est pas exacte car elle ne réalis e
pas d'interpolation.
Exemple sur les valeurs : 1, 3, 8, 9
La médiane calculée est 3 alors qu'elle devrait être de 5,5...

Cordialement,

Philippe

On 10 mai, 09:17, Eric
Bonjour,

Regardes ici :http://www.mvps.org/accessfr/queries/qry0019.htm




j'ai élaboré une base de données pour gérer des statistiques d e golf. Plutot
que d'exporter le résultat d'une requête dans XL, je voudrai calcu ler
directement une médiane dans access, qui pourrait varier selon la p ériode
étudiée.
Merci d'avance
--

A+
Erichttp://www.mpfa.info/
Archives :http://groups.google.fr/group/microsoft.public.fr.access?hl =fr



--
A+
Erichttp://www.mpfa.info/
Archives :http://groups.google.fr/group/microsoft.public.fr.access?hl=fr - Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -





Publicité
Poster une réponse
Anonyme