gssanova                 package:gss                 R Documentation

_F_i_t_t_i_n_g _S_m_o_o_t_h_i_n_g _S_p_l_i_n_e _A_N_O_V_A _M_o_d_e_l_s _w_i_t_h _N_o_n _G_a_u_s_s_i_a_n _R_e_s_p_o_n_s_e_s

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

     Fit smoothing spline ANOVA models to responses from selected
     exponential families with cubic spline, linear spline, or
     thin-plate spline marginals for numerical variables.  Factors are
     also accepted.  The symbolic model specification via `formula'
     follows the same rules as in `lm' and `glm'.

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

     gssanova(formula, family, type="cubic", data=list(), weights, subset,
             offset, na.action=na.omit, partial=NULL, method=NULL,
             varht=1, alpha=NULL, prec=1e-7, maxiter=30, ext=.05, order=2)

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

 formula: Symbolic description of the model to be fit.

  family: Description of the error distribution.  Supported are
          exponential families `"binomial"', `"poisson"', `"Gamma"',
          `"inverse.gaussian"', and `"nbinomial"'.  Also supported are
          accelerated life model families `"weibull"', `"lognorm"', and
          `"loglogis"'.

    type: Type of numerical marginals to be used.  Supported are
          `type="cubic"' for cubic spline marginals, `type="linear"'
          for linear spline marginals, and `type="tp"' for thin-plate
          spline marginals.

    data: Optional data frame containing the variables in the model.

 weights: Optional vector of weights to be used in the fitting process.

  subset: Optional vector specifying a subset of observations to be
          used in the fitting process.

  offset: Optional offset term with known parameter 1.

na.action: Function which indicates what should happen when the data
          contain NAs.

 partial: Optional extra fixed effect terms in partial spline models.

  method: Score used to drive the performance-oriented iteration. 
          Supported are `method="v"' for GCV, `method="m"' for GML, and
          `method="u"' for Mallow's CL.

   varht: Dispersion parameter needed for `method="u"'. Ignored when
          `method="v"' or `method="m"' are specified.

   alpha: Inverse scale parameter in accelerated life model families. 
          Ignored for exponential families.

    prec: Precision requirement for the iterations.

 maxiter: Maximum number of iterations allowed for performance-oriented
          iteration, and for inner-loop multiple smoothing parameter
          selection when applicable.

     ext: For cubic spline and linear spline marginals, this option
          specifies how far to extend the domain beyond the minimum and
          the maximum as a percentage of the range.  The default
          `ext=.05' specifies marginal domains of lengths 110 percent
          of their respective ranges.  Prediction outside of the domain
          will result in an error.  Ignored if `type="tp"' is
          specified.

   order: For thin-plate spline marginals, this option specifies the
          order of the marginal penalties.  Ignored if `type="cubic"'
          or `type="linear"' are specified.

_D_e_t_a_i_l_s:

     The models are fitted by penalized likelihood method through the
     performance-oriented iteration, as described in the reference
     cited below.

     Only one link is implemented for each `family'.  It is the logit
     link for `"binomial"', and the log link for `"poisson"',
     `"Gamma"', and `"inverse.gaussian"'. For `"nbinomial"', the
     working parameter is the logit of the probability p; see
     `NegBinomial'.  For `"weibull"', `"lognorm"', and `"loglogis"', it
     is the location parameter for the log life time.

     For `family="binomial"', `"poisson"', `"nbinomial"', `"weibull"',
     `"lognorm"', and `"loglogis"', the score driving the
     performance-oriented iteration defaults to `method="u"' with
     `varht=1'.  For `family="Gamma"' and `"inverse.gaussian"', the
     default is `method="v"'.

     See `ssanova' for details and notes concerning smoothing spline
     ANOVA models.

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

     `gssanova' returns a list object of `class' `"gssanova"' which
     inherits from the class `"ssanova"'.

     The method `summary' is used to obtain summaries of the fits.  The
     method `predict' can be used to evaluate the fits at arbitrary
     points, along with the standard errors to be used in Bayesian
     confidence intervals, both on the scale of the link. The methods
     `residuals' and `fitted.values' extract the respective traits from
     the fits.

_N_o_t_e:

     For `family="binomial"', the response can be specified either as
     two columns of counts or as a column of sample proportions plus a
     column of total counts entered through the argument `weights', as
     in `glm'.

     For `family="nbinomial"', the response may be specified as two
     columns with the second being the known sizes, or simply as a
     single column with the common unknown size to be estimated through
     the maximum likelihood method.

     For `family="weibull"', `"lognorm"', or `"loglogis"', the response
     consists of three columns, with the first giving the follow-up
     time, the second the censoring status, and the third the
     left-truncation time.  For data with no truncation, the third
     column can be omitted.

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

     Chong Gu, chong@stat.purdue.edu

_R_e_f_e_r_e_n_c_e_s:

     Gu, C. (1992), Cross-validating non Gaussian data. Journal of
     Computational and Graphical Statistics, 1, 169-179.

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

     Methods `predict.ssanova', `summary.gssanova', and
     `fitted.gssanova'.

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

     ## Fit a cubic smoothing spline logistic regression model
     test <- function(x)
             {.3*(1e6*(x^11*(1-x)^6)+1e4*(x^3*(1-x)^10))-2}
     x <- (0:100)/100
     p <- 1-1/(1+exp(test(x)))
     y <- rbinom(x,3,p)
     logit.fit <- gssanova(cbind(y,3-y)~x,family="binomial")
     ## The same fit
     logit.fit1 <- gssanova(y/3~x,"binomial",weights=rep(3,101))
     ## Obtain estimates and standard errors on a grid
     est <- predict(logit.fit,data.frame(x=x),se=TRUE)
     ## Plot the fit and the Bayesian confidence intervals
     plot(x,y/3,ylab="p")
     lines(x,p,col=1)
     lines(x,1-1/(1+exp(est$fit)),col=2)
     lines(x,1-1/(1+exp(est$fit+1.96*est$se)),col=3)
     lines(x,1-1/(1+exp(est$fit-1.96*est$se)),col=3)

