Comment spécifier des limites supérieure et inférieure lors de l'utilisation de numpy.aléatoire.normal

IOK donc, je veux être en mesure de choisir les valeurs d'une distribution normale qui n'a jamais tomber entre 0 et 1. Dans certains cas, je veux être en mesure de simplement retourner complètement aléatoire de la distribution, et dans d'autres cas, je veux les valeurs de retour cet automne sous la forme d'une gaussienne.

Pour le moment je suis en utilisant la fonction suivante:

def blockedgauss(mu,sigma):
    while True:
        numb = random.gauss(mu,sigma)
        if (numb > 0 and numb < 1):
            break
    return numb

Il choisit une valeur à partir d'une distribution normale, alors ignore si elle tombe en dehors de l'intervalle de 0 à 1, mais je me sens comme il doit y avoir une meilleure façon de le faire.

Si vous "bloquer" valeurs < 0 > 1, ça va encore être une distribution gaussienne?
il ne sera pas une distribution gaussienne, mais dans certains cas, je ne veux pas d'une distribution gaussienne. je veux retourner une distribution qui est réglable entre une distribution aléatoire (choix à partir d'un très large gaussien), à quelque chose de très proche d'une fonction delta (où la gaussienne devient très étroit)

OriginalL'auteur Catherine Georgia | 2013-08-26