Quiero modelar un par de variables $(X,Y)$ utilizando cópulas. Mi idea es modelar las distribuciones marginales y luego utilizar cópulas para combinar las distribuciones marginales y la cópula para obtener una distribución conjunta.
Sin embargo, no estoy seguro de cómo funciona.
Digamos que $X$ y $Y$ siguen distribuciones Gamma y que he encontrado los parámetros óptimos para ajustar mis curvas. El siguiente es mi código (Python) para ajustar la distribución Gamma a $X$ , utilizo casi lo mismo para $Y$ .
# x = [80, 100, 285, 186, 134, 89, 78, 45, 98, ...]
sns.distplot(x)
fit_alpha, fit_loc, fit_beta = stats.gamma.fit(x)
rv = stats.gamma(a=fit_alpha, loc=fit_loc, scale=fit_beta)
absc = np.linspace(0, 500, 100)
sns.lineplot(absc, rv.pdf(absc))
Ahora puedo trazar las funciones de distribución acumulativa de mis observaciones (las fdc son las fdc de las distribuciones Gamma ajustadas), y compruebo que las gráficas obtenidas son (casi) las de las distribuciones uniformes (lo que creo que es una condición para usar cópulas). Igual que antes, aquí está el código para $X$ pero hice lo mismo para $Y$ .
x_prime = stats.gamma.cdf(x, a=fit_alpha, loc=fit_loc, scale=fit_beta)
plt.hist(x_prime);
Entonces puedo mostrar el gráfico de dispersión de x_prime
y y_prime
(que son las cdf ajustadas de mis observaciones). Creo que lo que obtengo en esta fase es un cópula .
plt.scatter(x_prime, y_prime, alpha=0.22)
¿Fue un procedimiento adecuado? Y lo que es más importante, ¿qué debo hacer con eso para obtener una distribución conjunta?