# mn: The Multinomial Distribution In MGLM: Multivariate Response Generalized Linear Models

## Description

`rmn` generates random number vectors given `alpha`. The function `rmn(n, size, alpha)` calls `rmultinom(n, size, prob)` after converting `alpha` to probability. `dmn` computes the log of multinomial probability mass function.

## Usage

 ```1 2 3``` ```rmn(n, size, alpha) dmn(Y, prob) ```

## Arguments

 `n` number of random vectors to generate. `size` a scalar or a vector. `alpha` a vector or a matrix. `Y` the multivariate count matrix with dimension n x d, where n = 1,2,… is number of observations and d=2,… is number of categories. `prob` the probability parameter of the multinomial distribution. `prob` can be either a vector of length d or a matrix with matching size of `Y`. If `prob` is a vector, it will be replicated n times to match the dimension of `Y`. If the sum(s) of `prob` is not 1, it will be automatically scaled to have sum 1.

## Details

A multinomial distribution models the counts of d possible outcomes. The counts of categories are negatively correlated. y=(y_1, …, y_d) is a d category count vector. Given the parameter vector p = (p_1, …, p_d), 0 < p_j < 1, sum_{j=1}^d p_j = 1, the function calculates the log of the multinomial pmf

P(y|p) = C_{y_1, …, y_d}^{m} prod_{j=1}^{d} p_j^{y_j},

where m = sum_{j=1}^d y_j. Here, C_k^n, often read as "n choose k", refers the number of k combinations from a set of n elements.

The parameter p can be one vector, like the result from the distribution fitting function; or, p can be a matrix with n rows, like the estimate from the regression function,

p_j = (exp(X β_j)) / (1 + sum_{j'=1}^{d-1} exp(Xβ_{j'})),

where j=1,…,d-1 and p_d = 1/(1 + sum_{j'=1}^{d-1} exp(Xβ_{j'})). The d-th column of the coefficient matrix β is set to 0 to avoid the identifiability issue.

## Value

The function `dmn` returns the value of logP(y|p). When `Y` is a matrix of n rows, the function returns a vector of length n.

The function `rmn` returns multinomially distributed random number vectors

## Author(s)

Yiwen Zhang and Hua Zhou

## Examples

 ```1 2 3 4``` ```m <- 20 prob <- c(0.1, 0.2) dm.Y <- rdirmn(n=10, m, prob) pdfln <- dmn(dm.Y, prob) ```

MGLM documentation built on May 2, 2019, 1:38 p.m.