Практично будь-яка біваріантна копула дасть пару нормальних випадкових величин з деякою ненульовою кореляцією (деякі дадуть нуль, але це особливі випадки). Більшість (майже всі) з них отримають ненормальну суму.
У деяких сімействах копул може бути досягнута будь-яка бажана (популяційна) кореляція Спірмена ; складність полягає лише у пошуку кореляції Пірсона для нормальних запасів; це можливо в принципі, але алгебра в цілому може бути досить складною. [Однак, якщо у вас є співвідношення Spearman з чисельністю населення, співвідношення Пірсона - принаймні для легких граничних запасів, таких як Гаусс - у багатьох випадках може бути не надто далеко від нього.]
Усі, окрім перших двох прикладів у кардинальному сюжеті, повинні давати ненормальні суми.
Деякі приклади - перші два - з тієї ж сім'ї копул, що і п'ята частина прикладу кардинала - двовимірне розподіл, третій - вироджений.
Приклад 1:
Копула Клейтона ( )θ=−0.7
Тут сума дуже чітко виражена і досить сильно правим перекосом
Приклад 2:
Копула Клейтона ( )θ=2
Тут сума м'яко залишена косою. На випадок, якщо це не зовсім очевидно для всіх, тут я перевернув розподіл (тобто у нас є гістограма в блідо-фіолетовому) і наклав його, щоб ми могли чіткіше бачити асиметрію:−(x+y)
Ми могли б легко змінити напрям косості суми так, щоб негативна кореляція йшла з лівим перекосом і позитивна кореляція з правою косою (наприклад, взявши і у кожному з вищевикладені випадки - співвідношення нових змінних було б таким же, як і раніше, але розподіл суми було б перевернуто навколо 0, обернувши нахил).Y ∗ = - YX∗=−XY∗=−Y
З іншого боку, якщо ми просто заперечуємо одну з них, ми змінили б асоціацію між силою косості з ознакою кореляції (але не напрямком її).
Варто також пограти з кількома різними копулами, щоб зрозуміти, що може статися з двовимірним розподілом та нормальними запасами.
Гауссові поля з т-копулою можна експериментувати, не турбуючись про деталі копул (генерувати з корельованого двовимірного t, що легко, потім перетворити на рівномірні поля через інтегральне перетворення, потім перетворити рівномірні поля в Гаусса через зворотний звичайний cdf). Він матиме не нормальну, але симетричну суму. Тож навіть якщо у вас немає гарних пакетів копули, ви все одно можете робити якісь речі досить легко (наприклад, якби я намагався показати приклад швидко в Excel, я, мабуть, почав би з t-copula).
-
Приклад 3 : (це більше схоже на те, що я повинен був починати спочатку)
Розглянемо копулу, засновану на стандартній рівномірній , і дозволити для і для . Результат має однакові межі для і , але біваріантне розподіл вироджене. Перетворивши обидва поля в звичайні , ми отримаємо розподіл для який виглядає приблизно так:V = U 0 ≤ U < 1UV=U V=30≤U<121V=32−U12≤U≤1UVX=Φ−1(U),Y=Φ−1(V)X+Y
У цьому випадку кореляція між ними становить близько 0,66.
Отже, і співвідносяться нормали з (у даному випадку виразно) ненормальною сумою - тому що вони не є двовимірною нормою.XY
[Можна створити діапазон кореляцій, перевернувши центр (в , для в ), щоб отримати . У них буде шип при 0, а потім зазор з обох боків від цього, з нормальними хвостами.]U(12−c,12+c)c[0,12]V
Деякі коди:
library("copula")
par(mfrow=c(2,2))
# Example 1
U <- rCopula(100000, claytonCopula(-.7))
x <- qnorm(U[,1])
y <- qnorm(U[,2])
cor(x,y)
hist(x,n=100)
hist(y,n=100)
xysum <- rowSums(qnorm(U))
hist(xysum,n=100,main="Histogram of x+y")
plot(x,y,cex=.6,
col=rgb(0,100,0,70,maxColorValue=255),
main="Bivariate distribution")
text(-3,-1.2,"cor = -0.68")
text(-2.5,-2.8,expression(paste("Clayton: ",theta," = -0.7")))
Другий приклад:
#--
# Example 2:
U <- rCopula(100000, claytonCopula(2))
x <- qnorm(U[,1])
y <- qnorm(U[,2])
cor(x,y)
hist(x,n=100)
hist(y,n=100)
xysum <- rowSums(qnorm(U))
hist(xysum,n=100,main="Histogram of x+y")
plot(x,y,cex=.6,
col=rgb(0,100,0,70,maxColorValue=255),
main="Bivariate distribution")
text(3,-2.5,"cor = 0.68")
text(2.5,-3.6,expression(paste("Clayton: ",theta," = 2")))
#
par(mfrow=c(1,1))
Код третього прикладу:
#--
# Example 3:
u <- runif(10000)
v <- ifelse(u<.5,u,1.5-u)
x <- qnorm(u)
y <- qnorm(v)
hist(x+y,n=100)