Копула пакета R: имеет ли значение порядок размеров в cCopula? - PullRequest
0 голосов
/ 30 октября 2018

Я пытаюсь получить пример условия для значения в одном измерении, используя cCopula из пакета R's copula. Я получаю ожидаемое поведение, когда условное значение находится в первом измерении, но не в других измерениях.

Первое измерение работает как ожидалось:

cc <- claytonCopula(.5, dim = 2)
U <- cCopula(cbind(.1, runif(1000)), copula = cc, inverse = TRUE)
> head(U)
     [,1]       [,2]
[1,]  0.1 0.02399811
[2,]  0.1 0.51941744
[3,]  0.1 0.54457839
[4,]  0.1 0.30212338
[5,]  0.1 0.16368668
[6,]  0.1 0.43865921

Второй нет. Я ожидаю, что .1 будет значением во втором столбце.

U <- cCopula(cbind(runif(1000), .1), copula = cc, inverse = TRUE)
head(U)
           [,1]       [,2]
[1,] 0.85596900 0.19792006
[2,] 0.05069967 0.02663780
[3,] 0.87673450 0.20056410
[4,] 0.52156481 0.14809874
[5,] 0.42508008 0.13026719
[6,] 0.04852083 0.02567477

Мой вопрос: должен ли порядок иметь значение в cCopula? Если да, как я могу обойти это, и если нет, что я делаю не так?

1 Ответ

0 голосов
/ 31 октября 2018

Порядок имеет значение в cCopula. Проверьте раздел Value в документации по этой функции. Каждый столбец «содержит значения условной функции связки», обусловленный столбцами перед ним.

Не уверен, почему вы ожидаете иметь столбец 0.1 во втором примере; даже в первом примере этот второй столбец не является случайным равномерным значением:

set.seed(1)
cc <- claytonCopula(.5, dim = 2)
Z <- cbind(.1, runif(1000))
U <- cCopula(Z, copula = cc, inverse = TRUE)

> head(Z)
     [,1]      [,2]
[1,]  0.1 0.2655087
[2,]  0.1 0.3721239
[3,]  0.1 0.5728534
[4,]  0.1 0.9082078
[5,]  0.1 0.2016819
[6,]  0.1 0.8983897
> head(U)
     [,1]      [,2]
[1,]  0.1 0.2293643
[2,]  0.1 0.3274950
[3,]  0.1 0.5232455
[4,]  0.1 0.8893238
[5,]  0.1 0.1723588
[6,]  0.1 0.8777835
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...