La fonction LNGAMMA.PRECIS calcule le logarithme naturel de la fonction gamma avec une précision maximale. C'est la version haute précision de LNGAMMA (GAMMALN.PRECISE en anglais), indispensable quand tu travailles avec des calculs statistiques avancés, des distributions de probabilité ou des coefficients binomiaux pour de grands nombres.
Concrètement, la fonction gamma croît à une vitesse folle : GAMMA(171) dépasse les capacités d'Excel et retourne une erreur. LNGAMMA.PRECIS(171) fonctionne sans problème et te donne 711,71. C'est elle qu'on retrouve en statistiques bayésiennes, dans les modèles de distribution beta, les calculs de combinatoires pour grands n, et partout où les factorielles explosent.
Syntaxe de la fonction LNGAMMA.PRECIS
=LNGAMMA.PRECIS(x)LNGAMMA.PRECIS est disponible depuis Excel 2010. Pour les versions antérieures, utilise LNGAMMA qui donne des résultats identiques dans la plupart des cas. Les deux retournent une erreur #NOMBRE! si x est nul ou négatif.
Comprendre chaque paramètre de la fonction LNGAMMA.PRECIS
x
: un nombre strictement positif pour lequel tu veux calculer ln(Γ(x)), où Γ est la fonction gamma d'EulerC'est la généralisation de la factorielle aux nombres réels : pour un entier n, Γ(n) = (n - 1)!.
Tu peux passer une valeur directe comme 6, une référence de cellule comme A1, ou le résultat d'une formule. La valeur doit être strictement supérieure à 0.
Astuce : Pour un entier n, LNGAMMA.PRECIS(n) = ln((n-1)!). Si tu veux ln(n!), utilise LNGAMMA.PRECIS(n+1). Par exemple, ln(5!) = LNGAMMA.PRECIS(6) = 4,787...
Exemples pratiques pas à pas
Data scientist : coefficient binomial pour grands n
Tu es data scientist et tu dois calculer le nombre de combinaisons C(500, 250). Ce nombre est astronomique, mais tu peux le manipuler via son logarithme.
La formule utilise la propriété ln(C(n, k)) = ln(Γ(n+1)) - ln(Γ(k+1)) - ln(Γ(n-k+1)). Ici, LNGAMMA.PRECIS(501) - 2 * LNGAMMA.PRECIS(251) te donne 343,33. Si le résultat final est raisonnable, tu peux revenir dans l'espace d'origine avec =EXP(343,33) pour obtenir 1,17 × 10^149. C'est le logarithme qui permet de manipuler des nombres à 149 chiffres sans débordement.
| A | B | C | |
|---|---|---|---|
| 1 | Calcul | Formule | Résultat |
| 2 | ln(500!) | =LNGAMMA.PRECIS(501) | 2611,33 |
| 3 | ln(250!) | =LNGAMMA.PRECIS(251) | 1134,00 |
| 4 | ln(C(500,250)) | =LNGAMMA.PRECIS(501)-2*LNGAMMA.PRECIS(251) | 343,33 |
| 5 | C(500,250) | =EXP(343,33) | 1,17×10^149 |
=LNGAMMA.PRECIS(501)-2*LNGAMMA.PRECIS(251)Statisticien : logarithme de la fonction Beta
Tu modélises des probabilités avec une distribution Beta(α, β). La fonction Beta vaut B(α, β) = Γ(α)·Γ(β)/Γ(α+β). En passant au logarithme : ln(B) = ln(Γ(α)) + ln(Γ(β)) - ln(Γ(α+β)), ce qui s'exprime directement avec LNGAMMA.PRECIS.
Pour des valeurs élevées comme α = β = 50, la fonction gamma directe déborderait. LNGAMMA.PRECIS te retourne -68,398 sans la moindre erreur. Ce résultat sert de constante de normalisation dans les calculs de densité de probabilité beta.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | α | β | ln(B(α,β)) | Formule |
| 2 | 2 | 5 | -2,565 | =LNGAMMA.PRECIS(2)+LNGAMMA.PRECIS(5)-LNGAMMA.PRECIS(7) |
| 3 | 10 | 10 | -12,802 | =LNGAMMA.PRECIS(10)+LNGAMMA.PRECIS(10)-LNGAMMA.PRECIS(20) |
| 4 | 50 | 50 | -68,398 | =LNGAMMA.PRECIS(50)+LNGAMMA.PRECIS(50)-LNGAMMA.PRECIS(100) |
=LNGAMMA.PRECIS(50)+LNGAMMA.PRECIS(50)-LNGAMMA.PRECIS(100)Physicien : précision vs approximation de Stirling
Tu calcules la fonction de partition d'un système de N particules. Les factorielles interviennent pour tenir compte de l'indiscernabilité des particules.
L'approximation de Stirling (ln(N!) ≈ N·ln(N) - N) est pratique mais introduit une erreur relative décroissante : 0,9% à N = 100, 0,07% à N = 1000. LNGAMMA.PRECIS(N+1) te donne la valeur exacte de ln(N!) sans cette approximation, pour n'importe quelle taille de système.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | N particules | ln(N!) exact | Approximation Stirling | Écart |
| 2 | 100 | 363,74 | 360,52 | 0,9% |
| 3 | 1000 | 5912,13 | 5907,76 | 0,07% |
| 4 | 10000 | 82108,93 | 82103,40 | 0,007% |
=LNGAMMA.PRECIS(10001)Astuce de pro : Pour tester la limite d'Excel : =GAMMA(170) fonctionne encore (7,26×10^306), mais =GAMMA(171) retourne #NOMBRE!. En revanche, =LNGAMMA.PRECIS(171) retourne 711,71 sans problème.
Envie de t'entraîner sur de vrais exercices Excel ?
M'entraînerLes erreurs fréquentes avec la fonction LNGAMMA.PRECIS
Les ratés avec LNGAMMA.PRECIS viennent presque tous du domaine de définition : la fonction n'existe que pour x strictement positif, donc un zéro ou un négatif te renvoie aussitôt #NOMBRE!. Vient ensuite le piège du décalage, parce que Γ(n) vaut (n-1)! et non n! — c'est l'oubli du +1 qui fausse tes factorielles. Et même quand le calcul passe, EXP peut déborder en repassant dans l'espace normal.
Passer un nombre négatif ou zéro
LNGAMMA.PRECIS n'accepte que les nombres strictement positifs. Γ(0) et Γ(nombres négatifs entiers) sont soit infinis soit indéfinis. Excel retourne #NOMBRE! pour tout x ≤ 0.
Solution : Vérifie que ta cellule contient une valeur strictement positive avant d'appeler la fonction. Utilise =SI(A1>0; LNGAMMA.PRECIS(A1); "Valeur invalide") pour sécuriser la formule.
Oublier le décalage d'un pour les factorielles
Γ(n) = (n - 1)!, pas n!. Pour calculer ln(n!), il faut donc appeler LNGAMMA.PRECIS(n+1). Par exemple, ln(5!) = LNGAMMA.PRECIS(6), et non LNGAMMA.PRECIS(5) qui retourne ln(4!) = ln(24).
Solution : Retiens la règle : pour ln(n!), utilise LNGAMMA.PRECIS(n+1). Pour un coefficient binomial C(n, k), la formule est =LNGAMMA.PRECIS(n+1) - LNGAMMA.PRECIS(k+1) - LNGAMMA.PRECIS(n-k+1).
EXP déborde même si LNGAMMA.PRECIS fonctionne
LNGAMMA.PRECIS peut retourner des valeurs comme 343,33, mais =EXP(343,33) dépasse les capacités d'Excel (~10^308 max). La conversion inverse avec EXP n'est donc possible que si le résultat reste dans cet intervalle.
Solution : Garde autant que possible tes calculs dans l'espace logarithmique. Additionne des logarithmes plutôt que de les exponentier à chaque étape, et n'utilise EXP que pour le résultat final si celui-ci est raisonnable.
Questions fréquentes sur la fonction LNGAMMA.PRECIS
Quelle différence entre LNGAMMA et LNGAMMA.PRECIS ?
LNGAMMA.PRECIS utilise un algorithme optimisé qui offre une précision supérieure, notamment pour les valeurs très petites (proches de 0) ou très grandes. Pour la plupart des usages courants, la différence est minime, mais en calcul scientifique de haute précision, LNGAMMA.PRECIS est préférable.
Pourquoi utiliser le logarithme plutôt que GAMMA directement ?
La fonction gamma croît extrêmement vite. GAMMA(171) dépasse la capacité d'Excel et retourne #NOMBRE!. En revanche, LNGAMMA.PRECIS(171) = 711,71 fonctionne parfaitement. Le logarithme compresse les grandes valeurs et permet de travailler avec des nombres qui seraient autrement impossibles à manipuler.
LNGAMMA.PRECIS accepte-t-il les nombres négatifs ?
Non, LNGAMMA.PRECIS n'accepte que les nombres strictement positifs (x > 0). Pour un nombre négatif ou zéro, Excel retourne l'erreur #NOMBRE!. La fonction gamma n'est pas définie pour les entiers négatifs et nuls.
Comment convertir LNGAMMA.PRECIS en GAMMA ?
Utilise =EXP(LNGAMMA.PRECIS(x)) pour obtenir GAMMA(x). Attention : si x est grand, EXP débordera quand même. LNGAMMA.PRECIS est justement utile pour rester dans l'espace logarithmique et éviter ce débordement.
Dans quels domaines utilise-t-on LNGAMMA.PRECIS ?
LNGAMMA.PRECIS est essentiel en statistiques bayésiennes, en modélisation de distributions (Beta, Gamma, Dirichlet), en calcul de coefficients binomiaux pour grands n, et en physique statistique. Partout où les factorielles explosent, le passage au logarithme via LNGAMMA.PRECIS est la solution.
Pour aller plus loin
Les fonctions similaires : LNGAMMA, GAMMA, LOI.GAMMA.N, FACT
Bloqué sur une formule Excel ?
Pose ta question à notre assistant Excel IA, il te sort la bonne formule en quelques secondes.
Essayer l'assistant IAGratuit · 10 questions par mois
