copulaparam

Параметры Копулы как функция ранговой корреляции

Описание

пример

rho = copulaparam('Gaussian',r) возвращает параметры линейной корреляции, rho, которые соответствуют Гауссовой копуле с ранговой корреляцией Кендалла, r.

rho = copulaparam('t',r,nu) возвращает параметры линейной корреляции, rho, которые соответствуют t совокупности с ранговой корреляцией Кендалла, r, и степени свободы, nu.

alpha = copulaparam(family,r) возвращает параметр копулы, alpha, что соответствует двухмерной архимедовой копуле типа, заданного family, с ранговой корреляцией Кендалла, r.

___ = copulaparam(___,Name,Value) возвращает параметр корреляции, используя любой из предыдущих синтаксисов, с дополнительными опциями, заданными одним или несколькими Name,Value аргументы в виде пар. Для примера можно задать, является ли значение корреляции ранга входа rho Спирмана или tau Кендалла.

Примеры

свернуть все

Сгенерируйте коррелированные случайные данные из бета- распределения, используя двухмерную Гауссову копулу с корреляцией тау ранга Кендалла, равной -0,5.

Вычислите параметр линейной корреляции из ранга значения корреляции.

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

Используйте Гауссову копулу, чтобы сгенерировать двухколоночную матрицу зависимых случайных значений.

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

Каждый столбец содержит 100 случайных значений от 0 до 1 включительно, выбранных из непрерывного равномерного распределения.

Создайте scatterhist график для визуализации случайных чисел, сгенерированных с помощью копулы.

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

Figure contains an axes. The axes contains an object of type line.

Гистограммы показывают, что данные в каждом столбце копулы имеют маргинальное равномерное распределение. scatterplot показывает, что данные в двух столбцах отрицательно коррелируют.

Используйте обратную функцию cdf betainv чтобы преобразовать каждый столбец равномерных маргинальных распределений в случайные числа из бета-распределения. В первом столбце первый параметр формы A равен 1, а второй параметр формы B равен 2. Во втором столбце первый параметр формы A равен 1,5, а второй параметр формы B равен 2.

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

Создайте scatterhist график, чтобы визуализировать коррелированные данные бета- распределения.

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

Figure contains an axes. The axes contains an object of type line.

Гистограммы показывают маргинальные бета- распределения для каждой переменной. scatterplot показывает отрицательную корреляцию.

Проверьте, что выборка имеет ранг корреляцию, приблизительно равную начальному значению для tau Кендалла.

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

    1.0000   -0.5135
   -0.5135    1.0000

Ранговая корреляция выборки -0.5135 приблизительно равна начальному значению -0,5 для tau.

Входные параметры

свернуть все

Копула ранговая корреляция, возвращенная как скалярное значение или матрица скалярных значений.

  • Если r является скалярным коэффициентом корреляции, тогда rho является скалярным коэффициентом корреляции, соответствующим двухмерной копуле.

  • Если r является p -by p корреляционной матрицей, затем rho является p -by - p корреляционной матрицей.

Если копула задана как один из двухмерных типов архимедовой копулы ('Clayton', 'Frank', или 'Gumbel'), затем r является скалярным значением.

Степени свободы для t-копулы, заданные как положительное целое значение.

Типы данных: single | double

Семейство двухфазных архимедовых копул, заданное как одно из следующего.

'Clayton'Клейтон-копула
'Frank'Фрэнк Копула
'Gumbel'Гумбель-копула

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: 'type','Spearman' вычисляет ранговую корреляцию Спирмана.

Тип ранговой корреляции, заданный как разделенная разделенными запятой парами, состоящая из 'type' и одно из следующих.

  • 'Kendall' - Указывает, что входное значение для r является tau значением корреляции Кендалла

  • 'Spearman' - Указывает, что входное значение для r - значение корреляции rho ранга Спирмена

copulaparam использует приближение к ранговой корреляции Спирмана для семейств копул, которые не имеют существующей аналитической формулы. Приближение основано на плавной подгонке значений, вычисленных при дискретных значениях параметров копулы. Для t копулы приближение верно для степеней свободы, больших 0,05.

Пример: 'type','Spearman'

Выходные аргументы

свернуть все

Линейный параметр корреляции, возвращенный как скалярное значение или матрица скалярных значений.

  • Если r является скалярным коэффициентом корреляции, тогда rho является скалярным коэффициентом корреляции, соответствующим двухмерной копуле.

  • Если r является p -by p корреляционной матрицей, затем rho является p -by - p корреляционной матрицей.

Двухмерный параметр Архимедова копула, возвращенный как скалярное значение. Допустимые значения для alpha зависят от заданного семейства копул.

Семейство КопулаРазрешённые альфа- Значения
'Clayton'[0,∞)
'Frank'(-∞,∞)
'Gumbel'[1,∞)

Типы данных: single | double

Введенный в R2006a