Learn R Programming

VGAM (version 1.1-9)

Slash: Slash Distribution

Description

Density function, distribution function, and random generation for the slash distribution.

Usage

dslash(x, mu = 0, sigma = 1, log = FALSE,
       smallno = .Machine$double.eps*1000)
pslash(q, mu = 0, sigma = 1, very.negative = -10000,
       lower.tail = TRUE, log.p = FALSE)
rslash(n, mu = 0, sigma = 1)

Value

dslash gives the density, and

pslash gives the distribution function,

rslash generates random deviates.

Arguments

x, q

vector of quantiles.

n

Same as runif.

mu, sigma

the mean and standard deviation of the univariate normal distribution.

log

Logical. If TRUE then the logarithm of the density is returned.

very.negative

Numeric, of length 1. A large negative value. For (q-mu)/sigma values less than this, the value 0 is returned because integrate tends to fail. A warning is issued. Similarly, if (q-mu)/sigma is greater than abs(very.negative) then 1 is returned with a warning.

smallno

See slash.

lower.tail, log.p

Same meaning as in pnorm or qnorm.

Author

Thomas W. Yee and C. S. Chee

Details

See slash, the VGAM family function for estimating the two parameters by maximum likelihood estimation, for the formula of the probability density function and other details.

Function pslash uses a for () loop and integrate, meaning it's very slow. It may also be inaccurate for extreme values of q, and returns with 1 or 0 values when too extreme compared to very.negative.

See Also

slash.

Examples

Run this code
if (FALSE) {
curve(dslash, col = "blue", ylab = "f(x)", -5, 5, ylim = c(0, 0.4), las = 1,
     main = "Standard slash, normal and Cauchy densities", lwd = 2)
curve(dnorm, col = "black", lty = 2, lwd = 2, add = TRUE)
curve(dcauchy, col = "orange", lty = 3, lwd = 2, add = TRUE)
legend("topleft", c("slash", "normal", "Cauchy"), lty = 1:3,
       col = c("blue","black","orange"), lwd = 2)

curve(pslash, col = "blue", -5, 5, ylim = 0:1)
pslash(c(-Inf, -20000, 20000, Inf))  # Gives a warning
}

Run the code above in your browser using DataLab