Random numbers from (Skew) Stable Distributions

Description

Generate random numbers of the stable distribution

S(α, β, γ, δ; k)

with characteristic exponent alpha in (0,2], skewness beta in [-1,1], scale gamma in [0,Inf), and location delta in IR; see Nolan (2010) for the parameterization k in {0,1}. The case γ=0 is understood as the unit jump at δ.

Usage

1
rstable1(n, alpha, beta, gamma = 1, delta = 0, pm = 1)

Arguments

n

an integer, the number of observations to generate.

alpha

characteristic exponent alpha in (0,2].

beta

skewness beta in [-1,1].

gamma

scale gamma in [0,Inf).

delta

location delta in IR.

pm

0 or 1, denoting which parametrization (as by Nolan) is used.

Details

We use the approach of John Nolan for generating random variates of stable distributions. The function rstable1 provides two basic parametrizations, by default,

pm = 1, the so called “S”, “S1”, or “1” parameterization. This is the parameterization used by Samorodnitsky and Taqqu (1994), and is a slight modification of Zolotarev's (A) parameterization. It is the form with the most simple form of the characteristic function; see Nolan (2010, p. 8).

pm = 0 is the “S0” parameterization: based on the (M) representation of Zolotarev for an alpha stable distribution with skewness beta. Unlike the Zolotarev (M) parameterization, gamma and delta are straightforward scale and shift parameters. This representation is continuous in all 4 parameters.

Value

A numeric vector of length n containing the generated random variates.

References

Chambers, J. M., Mallows, C. L., and Stuck, B. W. (1976), A Method for Simulating Stable Random Variables, J. Amer. Statist. Assoc. 71, 340–344.

Nolan, J. P. (2012), Stable Distributions—Models for Heavy Tailed Data, Birkhaeuser, in progress.

Samoridnitsky, G. and Taqqu, M. S. (1994), Stable Non-Gaussian Random Processes, Stochastic Models with Infinite Variance, Chapman and Hall, New York.

See Also

rstable which also allows the 2-parametrization and provides further functionality for stable distributions.

Examples

1
2
3
4
5
6
7
8
9
   # Generate and plot a series of stable random variates
   set.seed(1953)
   r <- rstable1(n = 1000, alpha = 1.9, beta = 0.3)
   plot(r, type = "l", main = "stable: alpha=1.9 beta=0.3",
        col = "steelblue"); grid()

   hist(r, "Scott", prob = TRUE, ylim = c(0,0.3),
        main = "Stable S(1.9, 0.3; 1)")
   lines(density(r), col="red2", lwd = 2)

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.