Description Usage Arguments Details Value Author(s) References See Also Examples
Returns marginal matrix; i.e., matrix required to obtained marginal frequencies
1 | MarginalMatrix(var, marg, dim, SubsetCoding="Identity",SelectCells="All")
|
var |
character or numeric vector containing variables |
marg |
list of character or numeric indicating marginals |
dim |
numeric vector indicating the dimension of |
SubsetCoding |
allows a (character) type or a matrix to be assigned to variables for each element of |
SelectCells |
Useful option for empirical likelihood. Default "All" includes all columns, if a list of cells in the table is given only the corresponding columns of MarginalMatrix are included. |
Gives the matrix which, multiplied by a probability vector, gives the marginal probabilities.
The probability vector is assumed to be a vectorized form of the probabilities in a table, such that the last variable changes value fastest,
then the before last variable, etc. For example, the cells of a 2 x 3 table are arranged in vector form as (11,12,13,21,22,23).
To achieve this, the appropriate way to vectorize a data frame dat
is using c(t(ftable(dat)))
.
Special case of transposed DesignMatrix
:
1 2 | MarginalMatrix <- function(var,marg,dim,SubsetCoding="Identity")
t(DesignMatrix(var,marg,dim,SubsetCoding=SubsetCoding,MakeSubsets=FALSE))
|
Allows weighted sums of probabilities using SubsetCoding
matrix
W. P. Bergsma w.p.bergsma@lse.ac.uk
Bergsma, W. P. (1997). Marginal models for categorical data. Tilburg, The Netherlands: Tilburg University Press. http://stats.lse.ac.uk/bergsma/pdf/bergsma_phdthesis.pdf
Bergsma, W. P., Croon, M. A., & Hagenaars, J. A. P. (2009). Marginal models for dependent, clustered, and longitudunal categorical data. Berlin: Springer.
ConstraintMatrix
, DesignMatrix
, DirectSum
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | # Computing marginal frequencies
n <- c(1:6) #example list of frequencies
var <- c("A","B")
marg <- list(c("A"),c("B"))
dim <- c(2,3)
at <- MarginalMatrix(var,marg,dim)
# list of marginal frequencies:
at
# identitymatrix: several ways of specifying:
marg <- c("A","B")
MarginalMatrix(var, marg,dim)
MarginalMatrix(var, marg, dim,
SubsetCoding = list(c("A", "B"), list("Identity", "Identity")))
MarginalMatrix(var, marg, dim,
SubsetCoding = list(c("A","B"), list(rbind(c(1,0),c(0,1)), rbind(c(1,0,0),c(0,1,0),c(0,0,1)))))
# omit second category of first variable
at <- MarginalMatrix(var, marg, dim,
SubsetCoding = list(c("A","B"), list(rbind(c(1,0)),"Identity")))
at
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.