Binary Distributions
Binary probability distributions have support on
Bernoulli distribution
Probability mass function
If
Distribution statement
y ~
bernoulli
(theta)
Increment target log probability density with bernoulli_lupmf(y | theta)
.
Stan Functions
real
bernoulli_lpmf
(ints y | reals theta)
The log Bernoulli probability mass of y given chance of success theta
real
bernoulli_lupmf
(ints y | reals theta)
The log Bernoulli probability mass of y given chance of success theta dropping constant additive terms
real
bernoulli_cdf
(ints y | reals theta)
The Bernoulli cumulative distribution function of y given chance of success theta
real
bernoulli_lcdf
(ints y | reals theta)
The log of the Bernoulli cumulative distribution function of y given chance of success theta
real
bernoulli_lccdf
(ints y | reals theta)
The log of the Bernoulli complementary cumulative distribution function of y given chance of success theta
ints
bernoulli_rng
(reals theta)
Generate a Bernoulli variate with chance of success theta
or an array of Bernoulli variates given an array of thetas
of the same dimensions; may only be used in transformed data and generated quantities blocks. For a description of argument and return types, see section vectorized PRNG functions.
Bernoulli distribution, logit parameterization
Stan also supplies a direct parameterization in terms of a logit-transformed chance-of-success parameter. This parameterization is more numerically stable if the chance-of-success parameter is on the logit scale, as with the linear predictor in a logistic regression.
Probability mass function
If
Distribution statement
y ~
bernoulli_logit
(alpha)
Increment target log probability density with bernoulli_logit_lupmf(y | alpha)
.
Stan Functions
real
bernoulli_logit_lpmf
(ints y | reals alpha)
The log Bernoulli probability mass of y given chance of success inv_logit(alpha)
real
bernoulli_logit_lupmf
(ints y | reals alpha)
The log Bernoulli probability mass of y given chance of success inv_logit(alpha)
dropping constant additive terms
R
bernoulli_logit_rng
(reals alpha)
Generate a Bernoulli variate with chance of success
Bernoulli-logit generalized linear model (Logistic Regression)
Stan also supplies a single function for a generalized linear model with Bernoulli distribution and logit link function, i.e. a function for a logistic regression. This provides a more efficient implementation of logistic regression than a manually written regression in terms of a Bernoulli distribution and matrix multiplication.
Probability mass function
If
Distribution statement
y ~
bernoulli_logit_glm
(x, alpha, beta)
Increment target log probability density with bernoulli_logit_glm_lupmf(y | x, alpha, beta)
.
Stan Functions
real
bernoulli_logit_glm_lpmf
(int y | matrix x, real alpha, vector beta)
The log Bernoulli probability mass of y given chance of success inv_logit(alpha + x * beta)
.
real
bernoulli_logit_glm_lupmf
(int y | matrix x, real alpha, vector beta)
The log Bernoulli probability mass of y given chance of success inv_logit(alpha + x * beta)
dropping constant additive terms.
real
bernoulli_logit_glm_lpmf
(int y | matrix x, vector alpha, vector beta)
The log Bernoulli probability mass of y given chance of success inv_logit(alpha + x * beta)
.
real
bernoulli_logit_glm_lupmf
(int y | matrix x, vector alpha, vector beta)
The log Bernoulli probability mass of y given chance of success inv_logit(alpha + x * beta)
dropping constant additive terms.
real
bernoulli_logit_glm_lpmf
(array[] int y | row_vector x, real alpha, vector beta)
The log Bernoulli probability mass of y given chance of success inv_logit(alpha + x * beta)
.
real
bernoulli_logit_glm_lupmf
(array[] int y | row_vector x, real alpha, vector beta)
The log Bernoulli probability mass of y given chance of success inv_logit(alpha + x * beta)
dropping constant additive terms.
real
bernoulli_logit_glm_lpmf
(array[] int y | row_vector x, vector alpha, vector beta)
The log Bernoulli probability mass of y given chance of success inv_logit(alpha + x * beta)
.
real
bernoulli_logit_glm_lupmf
(array[] int y | row_vector x, vector alpha, vector beta)
The log Bernoulli probability mass of y given chance of success inv_logit(alpha + x * beta)
dropping constant additive terms.
real
bernoulli_logit_glm_lpmf
(array[] int y | matrix x, real alpha, vector beta)
The log Bernoulli probability mass of y given chance of success inv_logit(alpha + x * beta)
.
real
bernoulli_logit_glm_lupmf
(array[] int y | matrix x, real alpha, vector beta)
The log Bernoulli probability mass of y given chance of success inv_logit(alpha + x * beta)
dropping constant additive terms.
real
bernoulli_logit_glm_lpmf
(array[] int y | matrix x, vector alpha, vector beta)
The log Bernoulli probability mass of y given chance of success inv_logit(alpha + x * beta)
.
real
bernoulli_logit_glm_lupmf
(array[] int y | matrix x, vector alpha, vector beta)
The log Bernoulli probability mass of y given chance of success inv_logit(alpha + x * beta)
dropping constant additive terms.
array[] int
bernoulli_logit_glm_rng
(matrix x, vector alpha, vector beta)
Generate an array of Bernoulli variates with chances of success inv_logit(alpha + x * beta)
; may only be used in transformed data and generated quantities blocks.
array[] int
bernoulli_logit_glm_rng
(row_vector x, vector alpha, vector beta)
Generate an array of Bernoulli variates with chances of success inv_logit(alpha + x * beta)
; may only be used in transformed data and generated quantities blocks.