es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Mapeando la distribución normal a una función.

Estoy tratando de mapear una función 4x²-sin(4x) en una curva de distribución normal aleatoria y luego, con nuevos datos, generar la nueva función Rojo- Función original, Azul- resultado esperado.

He generado con éxito el mapa de la distribución normal usando el siguiente código:

x = np.linspace(0,1,200)

rng = np.random.default_rng()

xn = rng.normal(loc,scale, size)

yn = fct(x)              # fct es la función

ny = plt.hist(yn, 200, density=True, facecolor='r', alpha=0.75)

Pero no puedo rastrearlo de vuelta a la función como se necesita (curva azul o similar).

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para generar una nueva función basada en la distribución normal mapeada, puedes utilizar el método de la transformación inversa.

    Primero, calcula la función de distribución acumulativa (CDF) de la distribución normal generada utilizando scipy.stats.norm:

    from scipy.stats import norm
    
    cdf_y = norm.cdf(y)
    

    Luego, utiliza la CDF inversa para generar nuevos puntos de datos:

    new_y = norm.ppf(cdf_y)
    

    Finalmente, aplica la función original 4x^2 - sin(4x) a los nuevos puntos de datos:

    new_fct = fct(new_y)
    

    Esto debería darte una nueva función basada en la distribución normal mapeada.

Comments are closed.