Skip to content
Prev 74911 / 398502 Next

multivariate F distribution

Well, there is a way for constructing a "multivariate F" (i.e., a 
multivariate distribution with F marginals), using copulas, thanks to 
Jun Yan's copula package. For instance, in for the bivariate case

library(copula)
x <- mvdc(claytonCopula(2), c("f", "f"),
          list(list(df1 = 8, df2 = 9), list(df1 = 8, df2 = 9)))
x
contour(x, dmvdc, xis = seq(1e-04, 2, len = 51), yis = seq(1e-04, 2, 
len = 51))

x.samp <- rmvdc(x, 1000)
hist(x.samp[, 1])
hist(x.samp[, 2])


Regarding the "correlation", the Clayton copula for theta = 2 gives 
Kendall's tau = 0.5, e.g.,

cor(x.samp, method = "kendall")


Best,
Dimitris

----
Dimitris Rizopoulos
Ph.D. Student
Biostatistical Centre
School of Public Health
Catholic University of Leuven

Address: Kapucijnenvoer 35, Leuven, Belgium
Tel: +32/16/336899
Fax: +32/16/337015
Web: http://www.med.kuleuven.be/biostat/
     http://www.student.kuleuven.be/~m0390867/dimitris.htm


----- Original Message ----- 
From: "Peter Dalgaard" <p.dalgaard at biostat.ku.dk>
To: "Anna Oganyan" <aoganyan at niss.org>
Cc: <r-help at stat.math.ethz.ch>
Sent: Thursday, August 04, 2005 10:05 AM
Subject: Re: [R] multivariate F distribution


Anna Oganyan <aoganyan at niss.org> writes:
Er, what is "multivariate F"? I have a guess (solve(A,B) where A and B
have independent Wishart distributions with the same covariance matrix
-- the matrix that gets summarized into Wilk's Lambda, Pillai's trace,
etc.) but Googling also pops up something about "inverted Dirichlet"
which may or may not be equivalent.

Wishart variates can be generate from (multivariate) normals in a
brute-force way using crossprod(). Some may have thought up a more
efficient way.