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.

copularnd

Los números aleatorios de copula

Descripción

ejemplo

u = copularnd('Gaussian',rho,n) Devuelve vectores aleatorios generados a partir de una cópula gaussiana con parámetros de correlación lineales.nrho

u = copularnd('t',rho,nu,n) Devuelve vectores aleatorios generados a partir de una cópula con parámetros de correlación lineales y grados de libertad.ntrhonu

u = copularnd(family,alpha,n) Devuelve vectores aleatorios generados a partir de una cópula de Archimedean bivariada que tiene el tipo especificado por y el parámetro escalar.nfamilyalpha

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

Parámetros de correlación lineales para la cópula, especificados como un valor escalar o una matriz de valores escalares.

  • Si es una matriz de correlación, el argumento de salida es un-por-matriz.rhoppunp

  • Si es un coeficiente de correlación escalar, el argumento de salida es una matriz de-por-2.rhoun

Tipos de datos: single | double

Número de vectores aleatorios que se devolverán, especificados como un valor escalar positivo.

  • Si especifica el tipo de cópula como o, y es una matriz de correlación, entonces es una-por-matriz.'Gaussian''t'rhoppunp

  • Si especifica el tipo de cópula como o, y es un coeficiente de correlación escalar, entonces es una matriz de-por-2.'Gaussian''t'rhoun

  • Si especifica el tipo de cópula como, o, a continuación, es una matriz de-por-2.'Clayton''Frank''Gumbel'un

Tipos de datos: single | double

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

Parámetro de cópula bivariante archimediana, especificado 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

Argumentos de salida

contraer todo

Números aleatorios de copula, devueltos como una matriz de valores escalares. Cada columna de es una muestra de una distribución marginal.uUniform(0,1)

  • Si especifica el tipo de cópula como o, y es una matriz de correlación, entonces es una-por-matriz.'Gaussian''t'rhoppunp

  • Si especifica el tipo de cópula como o, y es un coeficiente de correlación escalar, entonces es una matriz de-por-2.'Gaussian''t'rhoun

  • Si especifica el tipo de cópula como, o, a continuación, es una matriz de-por-2.'Clayton''Frank''Gumbel'un

Introducido en R2006a