全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
11881 22
2011-05-29
各位R爱好者,
想求两个指标的联合分布,我已得出边际分布都是gamma分布,现在想用Achimedean copulas 常见的三个函数拟合其联合分布,完全不知如何下手,应该求哪些参数?使用哪个copula函数?最后联合分布的结果如何表达?
已经闭门造车很久,没有进展,所以来论坛请教各位!
ps:fitCopula(copula, data, method="mpl", start=NULL, lower=NULL, upper=NULL,
          optim.control = list(NULL), optim.method = "BFGS",
          estimate.variance = TRUE)
其中举例时data都是通过已知的copula随机生成的,可我本来就是要求copula的,数据如何而来?

library("copula")
shape1=0.69647651
rate1=0.010729039
shape2=0.9635694881
rate2=0.0021278487
n<-500
cop<-claytonCopula(5,dim=2)
u<-rgamma(n,shape=shape1,scale=rate1)
v<-rgamma(n,shape=shape2,scale=rate2)
g<-fitCopula(cbind(pgamma(u,shape=shape1,scale=rate1),pgamma(v,shape=shape2,scale=rate2)),cop,optim.control=list(trace=TRUE,maxit=2000),method="ml");g
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2011-5-29 22:00:51
我的程序不对,不知正确应该是怎样?
而且得到的参数,如何用到生成元,用到联合分布表达式中
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-6-3 17:44:29
参考copula包中的Mvdc和fitMvdc,不过具体gamma分布的参数我不知道怎么写,所以得你自己写了
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-6-9 18:16:05
但是copula包中的Mvdc是通过copula随机生成一个多元分布的呢,也不是用实测数据
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-6-23 14:18:38
通过摸索已经得到联合函数了
和各位分享一下
首先通过kendall tau 计算出阿基米德各种类型copula的参数,如gumbel
calibKendallsTau(gumbel.cop, cor(cbind(u,v), method="kendall"))
再用mvdc多元函数表示出来
Cop.gumbel<-archmCopula(family="gumbel",dim=2,param=cg)  #gumbel
myMvdg<-mvdc(copula=Cop.gumbel,margins=c("gamma","gamma"),paramMargins=list(list(shape=shape1,rate=rate1),list(shape=shape2,rate=rate2)))
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-6-23 21:32:46
看pdf的帮助两个月解决不了是不可能的!!!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群