Learn R Programming

zipfR (version 0.6-70)

lnre.zm: The Zipf-Mandelbrot (ZM) LNRE Model (zipfR)

Description

The Zipf-Mandelbrot (ZM) LNRE model of Evert (2004).

The constructor function lnre.zm is not user-visible. It is invoked implicitly when lnre is called with LNRE model type "zm".

Usage

lnre.zm(alpha=.8, B=.01, param=list())

## user call: lnre("zm", spc=spc) or lnre("zm", alpha=.8, B=.1)

Arguments

alpha

the shape parameter \(\alpha\), a number in the range \((0,1)\)

B

the upper cutoff parameter \(B\), a positive number (\(B > 1\) is allowed although it is inconsistent with the interpretation of \(B\))

param

a list of parameters given as name-value pairs (alternative method of parameter specification)

Value

A partially initialized object of class lnre.zm, which is completed and passed back to the user by the lnre function. See lnre for a detailed description of lnre.zm objects (as a subclass of lnre).

Mathematical Details

The ZM model is a re-formulation of the Zipf-Mandelbrot law

$$ \pi_k = \frac{C}{(k + b) ^ a} $$

with parameters \(a > 1\) and \(b \ge 0\) (see also Baayen 2001, 101ff) as a LNRE model. It is given by the type density function

$$ g(\pi) := C\cdot \pi^{-\alpha-1} $$

for \(0 \le \pi \le B\) (and \(\pi = 0\) otherwise), with the parameters \(0 < \alpha < 1\) and \(0 < B \le 1\). The normalizing constant is

$$ C = \frac{ 1 - \alpha }{ B^{1 - \alpha} } $$

and the population vocabulary size is \(S = \infty\). The parameters of the ZM model are related to those of the original Zipf-Mandelbrot law by \(a = 1/\alpha\) and \(b = (1 - \alpha)/(B \cdot \alpha)\). See Evert (2004) for further details.

Details

The parameters of the ZM model can either be specified as immediate arguments:

    lnre.zm(alpha=.5, B=.1)
  

or as a list of name-value pairs:

    lnre.zm(param=list(alpha=.5, B=.1))
  

which is usually more convenient when the constructor is invoked by another function (such as lnre). If both immediate arguments and the param list are given, the immediate arguments override conflicting values in param. For any parameters that are neither specified as immediate arguments nor listed in param, the defaults from the function prototype are inserted.

The lnre.zm constructor also checks the types and ranges of parameter values and aborts with an error message if an invalid parameter is detected.

References

Baayen, R. Harald (2001). Word Frequency Distributions. Kluwer, Dordrecht.

Evert, Stefan (2004). A simple LNRE model for random character sequences. Proceedings of JADT 2004, 411-422.

See Also

lnre for pointers to relevant methods and functions for objects of class lnre, as well as a complete listing of LNRE models implemented in the zipfR library.