Learn R Programming

Directional (version 7.0)

Simulation of random values from a spherical Fisher-Bingham distribution: Simulation of random values from a spherical Fisher-Bingham distribution

Description

Simulation of random values from a spherical Fisher-Bingham distribution.

Usage

rfb(n, k, m, A)

Value

A matrix with the simulated data.

Arguments

n

The sample size.

k

The concentraion parameter (Fisher part). It has to be greater than 0.

m

The mean direction (Fisher part).

A

A symmetric matrix (Bingham part).

Author

Michail Tsagris.

R implementation and documentation: Michail Tsagris mtsagris@uoc.gr and Giorgos Athineou <gioathineou@gmail.com>.

Details

Random values from a spherical Fisher-Bingham distribution are generated. This functions included the option of simulating from a Kent distribution also.

References

Kent J. T., Ganeiber A. M. and Mardia K. V. (2018). A new unified approach for the simulation of a wide class of directional distributions. Journal of Computational and Graphical Statistics, 27(2): 291--301.

Kent J.T., Ganeiber A.M. and Mardia K.V. (2013). A new method to simulate the Bingham and related distributions in directional data analysis with applications. http://arxiv.org/pdf/1310.8110v1.pdf

Fallaize C. J. and Kypraios T. (2016). Exact bayesian inference for the Bingham distribution. Statistics and Computing, 26(1): 349--360. http://arxiv.org/pdf/1401.2894v1.pdf

See Also

rbingham, rvmf, rkent, f.rbing

Examples

Run this code
k <- 15
mu <- rnorm(3)
mu <- mu / sqrt( sum(mu^2) )
A <- cov(iris[, 1:3])
x <- rfb(50, k, mu, A)
vmf.mle(x) ## fits a von Mises-Fisher distribution to the simulated data
## Next we simulate from a Kent distribution
A <- diag( c(-5, 0, 5) )
n <- 100
x <- rfb(n, k, mu, A) ## data follow a Kent distribution
kent.mle(x) ## fits a Kent distribution
vmf.mle(x) ## fits a von Mises-Fisher distribution
A <- diag( c(5, 0, -5) )
n <- 100
x <- rfb(n, k, mu, A) ## data follow a Kent distribution
kent.mle(x) ## fits a Kent distribution
vmf.mle(x) ## fits a von Mises-Fisher distribution

Run the code above in your browser using DataLab