Loi normale en python petit problème de résultat

Résolu/Fermé
Utilisateur anonyme - Modifié le 20 nov. 2019 à 19:50
 Utilisateur anonyme - 6 déc. 2019 à 15:59
Bonjour, s'il vous plaît quelqu'un peut il m'aider pour la formule de la loi normale en python, elle est tellement complexe que je n'arrive pas à trouver les priorité de calcule pourtant je l'ai découpée en deux partie ! Mais mon résultat est faussé j'obtiens 0.9654687386698673 au lieu de 0.6826894921 et je ne comprends pas pourquoi ! je vous donne mon code python, merci d'avance pour toutes aides ! ;)
je vous donne un site ou la formule de la loi normale est disponible : https://www.codabrainy.com/loi-normale/10/2/8/12/

import numpy as np
import numpy.random

import matplotlib.pyplot as plt
from scipy.integrate import quad

import time
import random
import math

def loi_normal(mu, sigma):
    def f1(x):
        return 1/math.sqrt(2*math.pi*sigma)
    def f2(x):
        return np.exp(-1/2*((x-mu)/(sigma))**2)
    return quad(lambda x : f1(x)*f2(x), mu-sigma, mu+sigma)[0]

print(loi_normal(10, 2))




Configuration: Windows / Chrome 78.0.3904.97
A voir également:

1 réponse

avion-f16 Messages postés 19244 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 17 avril 2024 4 496
24 nov. 2019 à 14:17
Bonjour,

L'erreur se trouve à la ligne 13, tu as placé le sigma dans la racine.

Tu peux l'élever au carré au sein de la racine.

Si tu préfères le sortir, fais attention aux opérateurs : tu dois mettre le dénominateur entre parenthèses si tu veux garder la multiplication entre sqrt(...) et sigma.
1
Utilisateur anonyme
6 déc. 2019 à 15:59
merci du conseil j'avais vu mon erreur avant que tu me réponde c'est pour cela que je n'ai pas répondu mais merci quand même
0