Matplotlib: ¿Cómo convertir un histograma a una función de masa de probabilidad discreta?

Tengo una pregunta con respecto a la función hist () con matplotlib.

Estoy escribiendo un código para trazar un histograma de datos cuyo valor varía de 0 a 1. Por ejemplo:

values = [0.21, 0.51, 0.41, 0.21, 0.81, 0.99]

bins = np.arange(0, 1.1, 0.1)
a, b, c = plt.hist(values, bins=bins, normed=0)
plt.show()

El código anterior genera un histograma correcto (no pude publicar una imagen porque no tengo suficiente reputación). En términos de frecuencias, se ve así:

[0 0 2 0 1 1 0 0 1 1]

Me gustaría convertir esta salida en una función de masa de probabilidad discreta, es decir, para el ejemplo anterior, me gustaría obtener los siguientes valores de frecuencia:

[ 0.  0.  0.333333333  0.  0.166666667  0.166666667  0.  0.  0.166666667  0.166666667 ] # each item in the previous array divided by 6)

Pensé que simplemente necesitaba cambiar el parámetro en la función hist () a 'normado = 1'. Sin embargo, obtengo las siguientes frecuencias de histograma:

[ 0.  0.  3.33333333  0.  1.66666667  1.66666667  0.  0.  1.66666667  1.66666667 ]

Esto no es lo que espero y no sé cómo obtener la función de masa de probabilidad discreta, cuya suma debería ser 1.0. Una pregunta similar se hizo en el siguiente enlace (enlace a la pregunta), pero no creo que la pregunta se haya resuelto.

Aprecio tu ayuda por adelantado.

Respuestas a la pregunta(2)

Su respuesta a la pregunta