簡體   English   中英

來自R的Clayton Copula的概率分布

[英]Probability distribution from Clayton Copula in R

我有一個帶變量X和Y的Clayton Copula,我希望得到關節和條件概率P(X≤x,Y≤y)和P(X≤x|Y≤y)。 例如,X低於其第一百分位數的概率,條件是Y低於其第一百分位數:P(X≤1%|Y≤1%)

我試過使用R prob()函數,但我不確定輸出。

library(VineCopula)
   library(copula)
#I estimate my Copula and assumes normal distribution for the two marginals
copula_dist <- mvdc(copula=claytonCopula(param=1.0), margins=c("norm","norm"),
                    paramMargins=list(list(mean=0, sd=5),list(mean=0, sd=5)))

#I take a sample of 500 events
sim <- rMvdc(500,copula_dist)
# Compute the density
pdf_mvd <- dMvdc(sim, my_dist)
# Compute the CDF
cdf_mvd <- pMvdc(sim, my_dist)

#I wonder whether this gives me the proba P(X<0.01|Y<0.01)
prob(claytonCopula(param=1.0), c(0,.01),c(0,0.01)) 

我得到25.26%作為輸出,但我不確定它是否正確。

使用條件概率的定義:

P(X <= a | Y <= b) = P(X <= a, Y <= b) / P(Y <= b)

然后繼續如下:

library(copula)

copula <- mvdc(copula=claytonCopula(param=1.0), margins=c("norm","norm"),
               paramMargins=list(list(mean=0, sd=5),list(mean=0, sd=5)))
a <- 0.01; b <- 0.01
pMvdc(c(a,b), copula) / pnorm(b, mean=0, sd=5)
# 0.6670215

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM