% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/wrapper.R
\name{surv.parametric}
\alias{surv.parametric}
\title{Universal Parametric Survival Wrapper}
\usage{
surv.parametric(
  time,
  event,
  X,
  newdata,
  new.times,
  obsWeights,
  id,
  dist = "weibull",
  ...
)
}
\arguments{
\item{time}{Observed follow-up time.}

\item{event}{Observed event indicator.}

\item{X}{Training covariate data.frame.}

\item{newdata}{Test covariate data.frame to use for prediction.}

\item{new.times}{Times at which to obtain predicted survivals.}

\item{obsWeights}{Observation weights.}

\item{id}{Optional cluster/individual ID indicator.}

\item{dist}{Distribution for the AFT model (default: "weibull").}

\item{...}{Additional arguments passed to \code{\link[survival]{survreg}}.}
}
\value{
A list containing:
\itemize{
\item \code{fit}: The fitted model object (e.g., the raw \code{coxph} or \code{xgb.Booster} object).
If the model fails to fit, this may be an object of class \code{try-error}.
\item \code{pred}: A numeric matrix of cross-validated survival predictions
evaluated at the specified \code{new.times} grid.
}
}
\description{
Final Production Wrapper for AFT Models (Weibull, Exponential, LogNormal, LogLogistic).
Replaces individual wrappers with one robust, vectorized function.
}
\examples{
data("metabric", package = "SuperSurv")
dat <- metabric[1:30, ]
x_cols <- grep("^x", names(dat))[1:3]
X <- dat[, x_cols, drop = FALSE]
newX <- X[1:5, , drop = FALSE]
times <- seq(50, 150, by = 50)

fit <- surv.parametric(
  time = dat$duration,
  event = dat$event,
  X = X,
  newdata = newX,
  new.times = times,
  obsWeights = rep(1, nrow(dat)),
  id = NULL,
  dist = "weibull"
)

dim(fit[["pred"]])
}
