This is an old version, view current version.

16.7 Discrete range distribution

16.7.1 Probability mass functions

If l,uZ are lower and upper bounds (lu), then for any integer y{l,,u}, DiscreteRange(y | l,u)=1ul+1.

16.7.2 Sampling statement

y ~ discrete_range(l, u)

Increment the target log probability density with discrete_range_lupmf(y | l, u) dropping constant additive terms.
Available since 2.26

16.7.3 Stan functions

All of the discrete range distributions are vectorized so that the outcome y and the bounds l, u can be a single integer (type int) or an array of integers (type array[] int).

real discrete_range_lpmf(ints y | ints l, ints u)
The log probability mass function with outcome(s) y in l:u.
Available since 2.26

real discrete_range_lupmf(ints y | ints l, ints u)
The log probability mass function with outcome(s) y in l:u dropping constant additive terms.
Available since 2.26

real discrete_range_cdf(ints y, ints l, ints u)
The discrete range cumulative distribution function for the given y, lower and upper bounds.
Available since 2.26

real discrete_range_lcdf(ints y | ints l, ints u)
The log of the discrete range cumulative distribution function for the given y, lower and upper bounds.
Available since 2.26

real discrete_range_lccdf(ints y | ints l, ints u)
The log of the discrete range complementary cumulative distribution function for the given y, lower and upper bounds.
Available since 2.26

int discrete_range_rng(ints l, ints u)
Generate a discrete variate between the given lower and upper bounds; may only be used in transformed data and generated quantities blocks.
Available since 2.26