kalcount              package:repeated              R Documentation

_R_e_p_e_a_t_e_d _M_e_a_s_u_r_e_m_e_n_t_s _M_o_d_e_l_s _f_o_r _C_o_u_n_t_s _w_i_t_h _F_r_a_i_l_t_y _o_r _S_e_r_i_a_l
_D_e_p_e_n_d_e_n_c_e

_D_e_s_c_r_i_p_t_i_o_n:

     'kalcount' is designed to handle repeated measurements models with
     time-varying covariates. The distributions have two extra
     parameters as compared to the functions specified by 'intensity'
     and are generally longer tailed than those distributions.
     Dependence among observations on a unit can be through gamma or
     power variance family frailties (a type of random effect), with or
     without autoregression, or serial dependence over time.

     By default, a gamma mixture of the distribution specified in
     'intensity' is used, as the conditional distribution in the
     'serial' dependence models, and as a symmetric multivariate
     (random effect) model for 'frailty' dependence.

     Unless specified otherwise, the time origin is taken to be zero.
     The given times are the ends of the periods in which the counts
     occurred.

     Here, the variance, with exponential intensity, is a quadratic
     function of the mean, whereas, for 'nbkal', it is proportional to
     the mean function.

     If the counts on a unit are clustered, not longitudinal, use the
     failty dependence with the default exponential intensity, yielding
     a multivariate negative binomial distribution.

     Nonlinear regression models can be supplied as formulae where
     parameters are unknowns in which case factor variables cannot be
     used and parameters must be scalars. (See 'finterp'.)

     Marginal and individual profiles can be plotted using 'mprofile'
     and 'iprofile' and residuals with 'plot.residuals'.

_U_s_a_g_e:

     kalcount(response=NULL, times=NULL, origin=0,
             intensity="exponential", depend="independence", update="Markov",
             mu=NULL, shape=NULL, density=FALSE, ccov=NULL, tvcov=NULL, preg=NULL,
             ptvc=NULL, pbirth=NULL, pintercept=NULL, pshape=NULL, pinitial=1,
             pdepend=NULL, pfamily=NULL, envir=parent.frame(), print.level=0,
             ndigit=10, gradtol=0.00001, steptol=0.00001, fscale=1, iterlim=100,
             typsiz=abs(p), stepmax=10*sqrt(p%*%p))

_A_r_g_u_m_e_n_t_s:

response: A list of two column matrices with counts and corresponding
          times for each individual, one matrix or dataframe of counts,
          or an object of class, 'response' (created by 'restovec') or
          'repeated' (created by 'rmna' or 'lvna'). If the 'repeated'
          data object contains more than one response variable, give
          that object in 'envir' and give the name of the response
          variable to be used here.

   times: When response is a matrix, a vector of possibly unequally
          spaced times when they are the same for all individuals or a
          matrix of times. Not necessary if equally spaced. Ignored if
          response has class, 'response' or 'repeated'.

  origin: If the time origin is to be before the start of observations,
          a positive constant to be added to all times.

intensity: The form of function to be put in the Pareto distribution.
          Choices are exponential, Weibull, gamma, log normal, log
          logistic, log Cauchy, log Student, and gen(eralized)
          logistic.

  depend: Type of dependence. Choices are 'independence', 'frailty',
          and 'serial'.

  update: Type of for serial dependence. Choices are 'Markov',
          'serial', 'event', 'cumulated', 'count', and 'kalman'. With
          'frailty' dependence, weighting by length of observation time
          may be specified by setting update to 'time'.

      mu: A regression function for the location parameter or a formula
          beginning with ~, specifying either a linear regression
          function in the Wilkinson and Rogers notation (a log link is
          assumed) or a general function with named unknown parameters.
          Give the initial estimates in 'preg' if there are no
          time-varying covariates and in 'ptvc' if there are.

   shape: A regression function for the shape parameter or a formula
          beginning with ~, specifying either a linear regression
          function in the Wilkinson and Rogers notation or a general
          function with named unknown parameters. It must yield one
          value per observation.

 density: If TRUE, the density of the function specified in 'intensity'
          is used instead of the intensity.

    ccov: A vector or matrix containing time-constant baseline
          covariates with one row per individual, a model formula using
          vectors of the same size, or an object of class, 'tccov'
          (created by 'tcctomat'). If response has class, 'repeated',
          the covariates must be supplied as a Wilkinson and Rogers
          formula unless none are to be used or 'mu' is given.

   tvcov: A list of matrices with time-varying covariate values,
          observed in the time periods in 'response', for each
          individual (one column per variable), one matrix or dataframe
          of such covariate values, or an object of class, 'tvcov'
          (created by 'tvctomat'). If response has class, 'repeated',
          the covariates must be supplied as a Wilkinson and Rogers
          formula unless none are to be used or 'mu' is given.

    preg: Initial parameter estimates for the regression model:
          intercept plus one for each covariate in 'ccov'. If 'mu' is a
          formula or function, the parameter estimates must be given
          here only if there are no time-varying covariates. If 'mu' is
          a formula with unknown parameters, their estimates must be
          supplied either in their order of appearance in the
          expression or in a named list.

    ptvc: Initial parameter estimates for the coefficients of the
          time-varying covariates, as many as in 'tvcov'. If 'mu' is a
          formula or function, the parameter estimates must be given
          here if there are time-varying covariates present.

  pbirth: If supplied, this is the initial estimate for the coefficient
          of the birth model.

pintercept: The initial estimate of the intercept for the generalized
          logistic intensity.

  pshape: An initial estimate for the shape parameter of the intensity
          function (except exponential intensity). If 'shape' is a
          function or formula, the corresponding initial estimates. If
          'shape' is a formula with unknown parameters, their estimates
          must be supplied either in their order of appearance in the
          expression or in a named list.

pinitial: An initial estimate for the initial parameter. With 'frailty'
          dependence, this is the frailty parameter.

 pdepend: An initial estimate for the serial dependence parameter. For
          'frailty' dependence, if a value is given here, an
          autoregression is fitted as well as the frailty.

 pfamily: An optional initial estimate for the second parameter of a
          two-parameter power variance family mixture instead of the
          default gamma mixture. This yields a gamma mixture as 'family
          -> 0', an inverse Gauss mixture for 'family = 0.5', and a
          compound distribution of a Poisson-distributed number of
          gamma distributions for '-1 < family < 0'.

   envir: Environment in which model formulae are to be interpreted or
          a data object of class, 'repeated', 'tccov', or 'tvcov'; the
          name of the response variable should be given in 'response'.
          If 'response' has class 'repeated', it is used as the
          environment.

  others: Arguments controlling 'nlm'.

_V_a_l_u_e:

     A list of classes 'kalcount' and 'recursive' is returned.

_A_u_t_h_o_r(_s):

     J.K. Lindsey

_S_e_e _A_l_s_o:

     'carma', 'elliptic', 'finterp', 'gar', 'gettvc', 'gnlmm', 'gnlr',
     'iprofile', 'kalseries', 'kalsurv', 'mprofile', 'nbkal',
     'read.list', 'restovec', 'rmna', 'tcctomat', 'tvctomat'.

_E_x_a_m_p_l_e_s:

     treat <- c(0,0,1,1)
     tr <- tcctomat(treat)
     dose <- # matrix(rpois(20,10),ncol=5)
             matrix(c(9,13,16,7,12,6,9,10,11,9,10,10,7,9,9,9,8,10,15,4),
                     ncol=5,byrow=TRUE)
     dd <- tvctomat(dose)
     y <- # matrix(rpois(20,1+3*rep(treat,5)),ncol=5)
             restovec(matrix(c(1,1,1,1,0,1,0,1,0,5,3,3,4,1,4,4,2,3,2,5),
                     ncol=5,byrow=TRUE))
     reps <- rmna(y, ccov=tr, tvcov=dd)
     #
     # log normal intensity, independence model
     kalcount(y, intensity="log normal", dep="independence", preg=1,
             pshape=0.1)
     # random effect
     kalcount(y, intensity="log normal", dep="frailty", pinitial=0.1,
             preg=1, psh=0.1)
     # serial dependence
     kalcount(y, intensity="log normal", dep="serial", pinitial=0.1,
             preg=1, pdep=0.01, psh=0.1)
     # random effect and autoregression
     kalcount(y, intensity="log normal", dep="frailty", pinitial=0.1,
             pdep=0.1, preg=1, psh=0.1)
     # add time-constant variable
     kalcount(y, intensity="log normal", pinitial=0.1, psh=0.1,
             preg=c(1,0), ccov=treat)
     # or equivalently
     kalcount(y, intensity="log normal", mu=~treat, pinitial=0.1,
             psh=0.1, preg=c(1,0))
     # or
     kalcount(y, intensity="log normal", mu=~b0+b1*treat,
             pinitial=0.1, psh=0.1, preg=c(1,0), envir=reps)
     # add time-varying variable
     kalcount(y, intensity="log normal", pinitial=0.1, psh=0.1,
             preg=c(1,0), ccov=treat, ptvc=0, tvc=dose)
     # or equivalently, from the environment
     dosev <- as.vector(t(dose))
     kalcount(y, intensity="log normal", mu=~b0+b1*rep(treat,rep(5,4))+b2*dosev,
             pinitial=0.1, psh=0.1, ptvc=c(1,0,0))
     # or from the reps data object
     kalcount(y, intensity="log normal", mu=~b0+b1*treat+b2*dose,
             pinitial=0.1, psh=0.1, ptvc=c(1,0,0), envir=reps)
     # try power variance family
     kalcount(y, intensity="log normal", mu=~b0+b1*treat+b2*dose,
             pinitial=0.001, psh=14, ptvc=c(5,-1,0.1), envir=reps,
             pfamily=0.8)

