Various multiplicative multinomial probability utilities for different types of observation
MM(y,n=NULL,paras)
MM_allsamesum(y, n=NULL, paras)
MM_differsums(y, n=NULL, paras)
MM_allsamesum_A(y, paras)
MM_differsums_A(y, paras)
MM_single(yrow, paras, givelog=FALSE)
MM_support(paras, ss)
Observations: a matrix, each row is a single observation
A single observation corresponding to one row of
matrix y
Integer vector with one element for each row of y.
Default value of NULL means to interpret each row of y
as being observed once
Sufficient statistics, as returned by suffstats()
Boolean in MM_single() with TRUE meaning
to return the log likelihood and default FALSE meaning to
return the likelihood
Object of class paras
Robin K. S. Hankin
Consider non-negative integers y_1,...,y_ky_1,...,y_k with y_i=yy_1+...+y_k=y. Then suppose the frequency function of the distribution Y_1,...,Y_kY_1,...,Y_k is
Cy y_1,...,y_k _i=1^k p_i^y_i _1 i < j k_ij^y_iy_j omitted; see PDF
where p_i,...,p_k 0p_i,...,p_k >= 0, p_i=1p_1+...+p+k=1 correspond to probabilities; and _ij > 0theta_ij>0 for 1 i < j k1 <= i < j <= k are additional parameters.
Here C stands for a normalization constant:
C=C(p,,Y)= _y_1 + + y_k=y _i=1^k p_i^y_i _1 i < j k_ij^y_iy_j omitted; see PDF
which is evaluated numerically. This is computationally expensive.
The usual case is to use function MM().
Function MM() returns the log of the probability of a
matrix of rows of independent multinomial observations. It is a
wrapper for MM_allsamesum() and
MM_differsums(). Recall that optional argument n
specifies the number of times that each row is observed. Calls
NormC().
Function MM_allsamesum() gives the log of the
probability of observing a matrix where the rowsums are identical.
Calls NormC().
Function MM_differsums() gives the log of the
probability of observing a matrix where the rowsums are not
necessarily identical. Warning: This function takes a long
time to run. Calls NormC(), possibly many times.
Functions MM_allsamesum_A() and
MM_differsums_A() are analogous to functions
MM_allsamesum() and MM_differsums() but interpret the
matrix y as having rows corresponding to observations; each row
is observed once, as in data(pollen). Both call NormC().
Function MM_single() gives a likelihood function for a
paras object with a single multinomial observation (that is,
a single line of matrix y). Does not call NormC().
Function MM_support() gives the support (that is, the
log-likelihood) of a paras object; argument ss is the
sufficient statistic, as returned by suffstats(). Does not
call NormC().
Function dMM() [documented more fully at rMM.Rd]
gives the probability of a single multivariate observation (ie a
single row of the matrix argument y). Calls NormC().
data(voting)
data(voting)
p <- Lindsey(voting, voting_tally)
MM(voting,voting_tally,p) #No other value of 'p' gives a bigger value
Run the code above in your browser using DataLab