It may be useful to consider making an object of type "copula" (actually a copula family?). I'd have to be clever in what it looks like.
dcop()
, pcop()
, qcondcop()
, etc, with arguments u,v,copula
.copula()
(allow users to make their own):"rvine"
object can be a special case, so it would have class c("rvine", "copula")
.dcop(u, v, cop="frk")
and dfrk(u, v)
-- just include both!When writing about the package, differentiate between the variable labels (which are arbitrary), and the order (which are integers 1,...,d). Otherwise, always labelling with 1,...,d adds confusion: hard to know when to look at 1,...,d as the order or just arbitrary labels. (So, sometimes the labels correspond to the variable names, or "column number" of the data if they're integers, or they may refer to the order that they're introduced into the vine, in which case they'd be 1:ncol(A). I find the former much more intuitive)
How about making a function to extract the copula from an edge? For example, get the copula linking (1,2)|3.
Additional functionality:
Propose a naming convention for copulas (for the paper, but also for the package). Plain name should contain positively dependent copulas. Then permutation. Then reflection. Or something like that. Then show the group theory algebra to determine what is what. Include that algebra in copsupp
Add functionality to randomly generate a vine (not data from a vine). Could eventually make a "vine generator tool" that, for example, allows you to specify things like "amount of dependence in the vine", and other interpretable things.
Should add an as.rvine
function. For example, after fitting a cnqr vine, sometimes I just want to view the vine itself as a vine through summary
, instead of using the summary.cnqr
functionality. Either consider making a cnqr
object not also an rvine, but including the rvine in the cnqr
object, or strip the additional components from the cnqr
object with as.rvine
(which does not belong in the cnqr
package, because the rvine
components should be there no matter what additional features are added to the rvine).
In a paper, propose my way of writing a vine array. Say why it's good (allows truncation, and on individual columns, too). Give examples of what a D-vine and C-vine would look like.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.