Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment calculer une médiane dans Access

4 réponses
Avatar
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

4 réponses

Avatar
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+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
pbserv
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 wrote:
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=



Avatar
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é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 wrote:
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" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">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" target="_blank" class="text-blue hover:opacity-90 " style="word-break: break-all;" rel="noopener nofollow">http://groups.google.fr/group/microsoft.public.fr.access?hl=fr



Avatar
pbserv
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 wrote:
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 wrote:
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 -