Package 'pbivnorm'

Title: Vectorized Bivariate Normal CDF
Description: Provides a vectorized R function for calculating probabilities from a standard bivariate normal CDF.
Authors: Fortran code by Alan Genz. R code by Brenton Kenkel, based on Adelchi Azzalini's 'mnormt' package.
Maintainer: Brenton Kenkel <[email protected]>
License: GPL (>= 2)
Version: 0.6.0
Built: 2024-05-07 05:40:34 UTC
Source: https://github.com/brentonk/pbivnorm

Help Index


Standard bivariate normal CDF

Description

Calculate probabilities from the CDF of a standard bivariate normal distribution.

Usage

pbivnorm(x, y, rho = 0, recycle = TRUE)

Arguments

x

vector of upper integration limits for the CDF. May also be a two-column matrix, in which case y should not be used.

y

vector of upper integration limits.

rho

correlation parameter.

recycle

whether to automatically recycle the vectors x, y, and rho to conform to whichever is longest. If FALSE, all three must be the same length.

Details

This function returns values identical to those of biv.nt.prob in the mnormt package, but is vectorized to reduce the number of Fortran calls required for computation of many probabilities.

Value

Numeric vector of probabilities.

Author(s)

Fortran code by Alan Genz (see references). R interface by Brenton Kenkel ([email protected]), based on code from Adelchi Azzalini's mnormt package.

References

Genz, A. (1992). Numerical Computation of Multivariate Normal Probabilities. J. Computational and Graphical Statist., 1, 141–149.

Genz, A. (1993). Comparison of methods for the computation of multivariate normal probabilities. Computing Science and Statistics, 25, 400–405.

Genz, A. Fortran code for MVTDSTPACK available at http://www.math.wsu.edu/math/faculty/genz/software/fort77/mvtdstpack.f (as of 2011-02-21).

Examples

x <- rnorm(10)
y <- rnorm(10)
rho <- runif(10)

pbivnorm(x, y, rho)

X <- cbind(x, y)
pbivnorm(X, rho = rho)

## rho can be a single value, unless recycling is disallowed
rho <- runif(1)
pbivnorm(x, y, rho)