Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

copulaparam

Parámetros de copula como función de correlación de rangos

Descripción

ejemplo

rho = copulaparam('Gaussian',r) Devuelve los parámetros de correlación lineal, que corresponden a una cópula gaussiana con la correlación de rango de Kendall,.rhor

rho = copulaparam('t',r,nu) Devuelve los parámetros de correlación lineal, que corresponden a una cópula con la correlación de rango de Kendall, y los grados de libertad,.rhotrnu

alpha = copulaparam(family,r) Devuelve el parámetro de cópula, que corresponde a una cópula de Archimedean bivariada del tipo especificado por, con la correlación de rango de Kendall,.alphafamilyr

___ = copulaparam(___,Name,Value) Devuelve el parámetro de correlación mediante cualquiera de las sintaxis anteriores, con opciones adicionales especificadas por uno o más argumentos de par.Name,Value Por ejemplo, puede especificar si el valor de correlación de rango de entrada es de Spearman's o de Kendall.rhotau

Ejemplos

contraer todo

Genere datos aleatorios correlacionados de una distribución beta utilizando una cópula gaussiana bivariada con la correlación de rango de Kendall igual a-0,5.tau

Calcule el parámetro de correlación lineal desde el valor de correlación de rango.

rng default  % For reproducibility tau = -0.5; rho = copulaparam('Gaussian',tau)
rho = -0.7071 

Utilice una cópula gaussiana para generar una matriz de dos columnas de valores aleatorios dependientes.

u = copularnd('gaussian',rho,100);

Cada columna contiene 100 valores aleatorios entre 0 y 1, ambos inclusive, muestreados a partir de una distribución uniforme continua.

Cree un trazado para visualizar los números aleatorios generados mediante la cópula.scatterhist

figure scatterhist(u(:,1),u(:,2))

Los histogramas muestran que los datos de cada columna de la cópula tienen una distribución uniforme marginal. La gráfica de dispersión muestra que los datos de las dos columnas están correlacionados negativamente.

Utilice la función de CDF inversa para transformar cada columna de las distribuciones marginales uniformes en números aleatorios de una distribución beta.betainv En la primera columna, el primer parámetro de forma es igual a 1, y un segundo parámetro de forma es igual a 2.AB En la segunda columna, el primer parámetro de forma es igual a 1,5, y un segundo parámetro de forma es igual a 2.AB

b = [betainv(u(:,1),1,2), betainv(u(:,2),1.5,2)];

Cree un trazado para visualizar los datos de distribución beta correlacionados.scatterhist

figure scatterhist(b(:,1),b(:,2))

Los histogramas muestran las distribuciones beta marginales para cada variable. La gráfica de dispersión muestra la correlación negativa.

Compruebe que la muestra tiene una correlación de rangos aproximadamente igual al valor inicial de Kendall.tau

tau_sample = corr(b,'type','kendall')
tau_sample = 2×2

    1.0000   -0.5135
   -0.5135    1.0000

La correlación de rango de muestra de-0,5135 es aproximadamente igual al valor inicial-0,5 para.tau

Argumentos de entrada

contraer todo

Correlación de rangos de copula, devuelta como un valor escalar o una matriz de valores escalares.

  • Si es un coeficiente de correlación escalar, entonces es un coeficiente de correlación escalar correspondiente a una cópula bivariada.rrho

  • Si es una matriz a-por-correlación, entonces es una matriz a-por-correlación.rpprhopp

Si la cópula se especifica como uno de los tipos de cópula bivariada Archimedean (,, o), entonces es un valor escalar.'Clayton''Frank''Gumbel'r

Grados de libertad para la cópula, especificado como un valor entero positivo.t

Tipos de datos: single | double

Familia de cópula bivariada Archimediana, especificada como una de las siguientes.

'Clayton'Clayton cópula
'Frank'Frank cópula
'Gumbel'Gumbel cópula

Argumentos de par nombre-valor

Especifique pares de argumentos separados por comas opcionales. es el nombre del argumento y es el valor correspondiente. deben aparecer dentro de las cotizaciones.Name,ValueNameValueName Puede especificar varios argumentos de par de nombre y valor en cualquier orden como.Name1,Value1,...,NameN,ValueN

Ejemplo: calcula la correlación de rango de Spearman.'type','Spearman'

Tipo de correlación de rangos, especificada como el par separado por comas que consta de y uno de los siguientes.'type'

  • — Indica que el valor de entrada para es un valor de correlación de Kendall'Kendall'rtau

  • : Indica que el valor de entrada para es un valor de correlación de rango de Spearman'Spearman'rrho

utiliza una aproximación a la correlación del rango de Spearman para las familias de cópula que no tienen una fórmula analítica existente.copulaparam La aproximación se basa en un ajuste suave a los valores calculados en valores discretos de los parámetros de la cópula. Para una cópula, la aproximación es precisa para grados de libertad superiores a 0,05.t

Ejemplo: 'type','Spearman'

Argumentos de salida

contraer todo

Parámetro de correlación lineal, devuelto como un valor escalar o una matriz de valores escalares.

  • Si es un coeficiente de correlación escalar, entonces es un coeficiente de correlación escalar correspondiente a una cópula bivariada.rrho

  • Si es una matriz a-por-correlación, entonces es una matriz a-por-correlación.rpprhopp

Parámetro de cópula bivariante archimediana, devuelto como un valor escalar. Los valores permitidos dependen de la familia de cópula especificada.alpha

El copula FamilyValores alfa permitidos
'Clayton'[0,∞)
'Frank'(-∞,∞)
'Gumbel'[1,∞)

Tipos de datos: single | double

Introducido en R2006a