Plot the empirical distribution of categorical longitudinal data.
catplotmlx(
r,
col = NULL,
breaks = NULL,
plot = TRUE,
color = "#194280",
group = NULL,
facet = TRUE,
labels = NULL
)
a ggplot object if plot=TRUE
; otherwise, a list with fields:
color a vector of colors used for the plot
y a data frame with the values of the empirical distribution computed at each time point
a data frame with a column id, a column time, a column with values and possibly Hk[ja column group.
a vector of 3 column numbers: (id, time/x, y. Default = c(1, 2,3).
one of:
a vector giving the breakpoints,
a single number giving the number of segments.
if TRUE
the empirical distribution is displayed, if FALSE
the values are returned
a color to be used for the plots (default="#194280")
variable to be used for defining groups (by default, group is used when it exists)
makes subplots for different groups if TRUE
vector of strings
See http://simulx.webpopix.org/mlxr/catplotmlx/ for more details.
if (FALSE) {
catModel <- inlineModel("
[LONGITUDINAL]
input = {a,b}
EQUATION:
lp1=a-b*t
lp2=a-b*t/2
DEFINITION:
y = {type=categorical, categories={1,2,3},
logit(P(y<=1))=lp1, logit(P(y<=2))=lp2}
")
y.out <- list(name='y', time=seq(0, 100, by=4))
Ng <- 1000
g1 <- list(size=Ng, parameter=c(a=6,b=0.2))
res <- simulx(model=catModel, output=y.out, group=g1)
catplotmlx(res$y)
catplotmlx(res$y, breaks=seq(-2,102,by=8), color="purple")
catplotmlx(res$y, breaks=5, color="#490917")
g2 <- list(size=Ng, parameter=c(a=10,b=0.2))
res <- simulx(model=catModel, output=y.out, group=list(g1,g2))
catplotmlx(res$y)
catplotmlx(res$y, group="none")
g3 <- list(size=Ng, parameter=c(a=6,b=0.4))
g4 <- list(size=Ng, parameter=c(a=10,b=0.4))
res <- simulx(model=catModel, output=y.out, group=list(g1,g2,g3,g4))
catplotmlx(res$y)
cov <- data.frame(id=levels(res$y$id), a=rep(c(6,10,6,10),each=Ng),
b=rep(c(0.2,0.2,0.4,0.4),each=Ng))
catplotmlx(res$y, group=cov)
}
Run the code above in your browser using DataLab