copula

copulaFit

Descripción

La acción `copulaFit` del conjunto de acciones de Modelado de Cópulas se utiliza para estimar los parámetros de un tipo de cópula específico basándose en datos de entrada. Este proceso es fundamental para modelar la estructura de dependencia entre múltiples variables aleatorias, independientemente de sus distribuciones marginales. La acción soporta varios tipos de cópulas y métodos de estimación.

copula.copulaFit / table={...}, var={'y1', 'y2', ...}, copulatype="CLAYTON" | "FRANK" | "GUMBEL" | "NORMAL" | "T" <, ...opciones adicionales>;
Parámetros
ParámetroDescripción
copulatype Especifica el tipo de cópula a estimar. Puede ser CLAYTON, FRANK, GUMBEL, NORMAL o T.
table Especifica la tabla de datos de entrada que contiene las variables a modelar.
var Especifica la lista de nombres de variables para el ajuste de la cópula.
corrtable Especifica la tabla que contiene la matriz de correlaciones de Pearson para usar al ajustar una cópula t.
df Especifica un valor inicial para los grados de libertad (df) al ajustar una cópula t.
display Especifica las tablas de resultados que se mostrarán en la salida.
initialvalues Proporciona valores iniciales para la optimización numérica.
KendallCorrtable Especifica la tabla que contiene la matriz de correlaciones de Kendall para usar al ajustar una cópula t.
margApproxOpts Especifica las opciones utilizadas al aproximar la función de distribución marginal empírica.
marginals Especifica la distribución marginal de las variables individuales. Puede ser 'EMPIRICAL' o 'UNIFORM'.
method Especifica el método para estimar los parámetros. Puede ser 'MLE' (Máxima Verosimilitud) o 'CAL' (Calibración).
name Especifica un identificador para el ajuste, que se almacena como una variable de ID en la tabla de salida.
optimizer Especifica los parámetros que controlan el proceso de estimación de parámetros.
outpseudo Especifica la tabla de salida para guardar las pseudo-muestras con distribuciones marginales uniformes.
outputTables Especifica la lista de tablas de visualización para generar como tablas CAS.
plot Especifica las opciones utilizadas para producir gráficos de diagnóstico y visualización.
store Almacena las propiedades del modelo y los resultados del ajuste en un almacén de elementos (item store).
theta Especifica un valor inicial para el parámetro theta de las cópulas de Arquímedes.
tolerance Especifica la tolerancia que se permite para el ajuste.
varSummary Si es TRUE, produce una tabla que describe propiedades estadísticas básicas de las variables del modelo.
Creación de Datos de Ejemplo

Este paso crea una tabla CAS llamada `mycas.simdata` con dos variables, `y1` y `y2`, que exhiben una cierta dependencia. Estos datos se utilizarán para ajustar un modelo de cópula.

¡Copiado!
1DATA mycas.simdata(keep=y1 y2);
2 call streaminit(123);
3 DO i = 1 to 1000;
4 x1 = rand('NORMAL');
5 x2 = rand('NORMAL');
6 y1 = exp(0.5 * x1);
7 y2 = exp(0.2 * x1 + 0.8 * x2);
8 OUTPUT;
9 END;
10RUN;

Ejemplos

Este ejemplo muestra cómo ajustar una cópula Clayton a las variables `y1` y `y2` de la tabla `mycas.simdata` utilizando el método de máxima verosimilitud (MLE).

Código SAS® / CAS Código en espera de validación por la comunidad
¡Copiado!
1PROC CAS;
2 copula.copulaFit /
3 TABLE={name='simdata'},
4 var={'y1', 'y2'},
5 copulaType='CLAYTON',
6 method='MLE';
7RUN;
Resultado :
La salida mostrará las estimaciones de los parámetros para la cópula Clayton, incluyendo el parámetro theta y las estadísticas de ajuste del modelo. También se mostrará un resumen de las variables y la información del ajuste.

Este ejemplo ajusta una cópula t, que es más flexible para modelar la dependencia en las colas. Se especifica un valor inicial para los grados de libertad (`df`). Además, se utiliza la opción `store` para guardar el modelo ajustado en un almacén de elementos llamado `mycas.copulastore` y la opción `outpseudo` para generar una tabla con las pseudo-muestras.

Código SAS® / CAS Código en espera de validación por la comunidad
¡Copiado!
1PROC CAS;
2 copula.copulaFit /
3 TABLE={name='simdata'},
4 var={'y1', 'y2'},
5 copulaType='T',
6 df=5,
7 method='MLE',
8 store={name='copulastore', replace=true},
9 outpseudo={name='pseudosamples', replace=true};
10RUN;
Resultado :
La salida incluirá las estimaciones para los parámetros de la cópula t (grados de libertad y matriz de correlación). Además, se creará un almacén de elementos `mycas.copulastore` que contiene el modelo y una tabla `mycas.pseudosamples` con las pseudo-muestras transformadas.

FAQ

¿Cuál es el propósito de la acción `copula.copulaFit` en SAS Viya?
¿Qué tipos de cópulas se pueden estimar con la acción `copulaFit`?
¿Para qué se utiliza el parámetro `table`?
¿Qué especifica el parámetro `var`?
¿Qué métodos de estimación están disponibles a través del parámetro `method`?
¿Qué significa el parámetro `marginals` y qué opciones tiene?
¿Cómo se puede guardar el modelo ajustado para su uso posterior?
Al ajustar una cópula t, ¿cómo se puede proporcionar una matriz de correlación inicial?
¿Es posible especificar valores iniciales para los parámetros de optimización?

Escenarios asociados

Caso de uso
Modelado de Dependencia de Activos y Persistencia del Modelo

Un banco de inversión necesita analizar la estructura de dependencia entre dos clases de activos principales (Acciones y Bonos) para mejorar su cálculo de Valor en Riesgo (VaR)....

Caso de uso
Estimación de Cópula T en Datos Masivos de Siniestralidad

Una aseguradora multinacional desea modelar la dependencia de cola (eventos extremos simultáneos) entre tres líneas de negocio: Automóvil, Hogar y Salud. El conjunto de datos es...

Caso de uso
Robustez ante Valores Faltantes con Cópula Gumbel (Eventos Extremos)

Un departamento de hidrología estudia la probabilidad conjunta de desbordamientos de ríos (niveles extremos). Los sensores de campo a menudo fallan, generando valores nulos (mis...