vine copula学习-Day1
前言:无语,被迫留在学校,干点力所能及的事情吧,希望不要浪费这段时光。
列出了几个可能会用到的函数,今天就这样,明天继续学习,需要再取。
BiCop函数
通过这个函数,plot()可以画出surface plot
RVineMatrix
这里最重要的应该是RVineMatrix这个函数了,后面无论是画图还是抽样都必须要用到。
RVineMatrix(
Matrix,
family = array(0, dim = dim(Matrix)),#两两之间所属的族
par = array(NA, dim = dim(Matrix)),第一个参数矩阵
par2 = array(NA, dim = dim(Matrix)),#第二个参数矩阵
names = NULL,#起名
check.pars = TRUE
)
RVineStructureSelect
数的结构选择,可以画出数图,可以得出每个pair copula的参数,也可得到整体的AIC值等统计量
例:
# load data set
data(daxreturns)
# select the R-vine structure, families and parameters
daxreturns <- daxreturns[1:250, 1:4]
RVM <- RVineStructureSelect(daxreturns, c(1:6), progress = TRUE)
## see the object's content or a summary
str(RVM)
summary(RVM)
RVineTreePlot(这个函数可以,但是不如先给出RvineMatrix,然后直接plot来的更直接)
即:
#画出结构图,也太丑了吧(基于RVinematrix)
## define RVineMatrix object
library(network)
RVMM <- RVineMatrix(Matrix = RVM$Matrix, family = RVM$family,
par = RVM$par, par2 = RVM$par2,
names = RVM$names)
plot(RVMM)
对copula函数提供配对图(pairs.copuladata)
使用默认设置,它在下层面板绘制二元等高线图,在上层面板绘制散点图和相关性,在对角线面板绘制直方图。也可以根据需要自己进行设定。(这个图画出来很唬人,其实很简单的语句)
参数必须是一个copula对象(用as.copula函数变换一下,class就会发生改变)
再介绍一个抽样的函数
这个函数从给定的R-vine中模拟出很多数,可以计算分位数、AIC值等等
RVineSim(300,RVineMatrix)
AIC and BIC of an R-Vine Copula Model(举例)
# define 5-dimensional R-vine tree structure matrix
应该是R-vine五维结构矩阵
# define R-vine pair-copula family matrix
这里定义两两之间的pair-copula
# define R-vine pair-copula parameter matrix
再定义两两间的参数矩阵(association parameter)
# define second R-vine pair-copula parameter matrix
有些copula会有第二个参数,比如t-copula,因此需要被定义,如果没有就直接用0代替
# define RVineMatrix object
用此包中的RVineMatrix定义,上面的准备都是此参数的输入参数
# simulate a sample of size 300 from the R-vine copula model
RVineSim(300,RVineMatrix)
# compute AIC and BIC
要用抽样出来的数据计算AIC和BIC
RVineAIC(simdata, RVM)