RunPoissonRegression_Single {Colossus}R Documentation

Performs poisson regression with no derivative calculations

Description

RunPoissonRegression_Single uses user provided data, person-year/event columns, vectors specifying the model, and returns the results

Usage

RunPoissonRegression_Single(
  df,
  pyr0,
  event0,
  names,
  Term_n,
  tform,
  a_n,
  modelform,
  fir,
  control,
  keep_constant = rep(0, length(names))
)

Arguments

df

a data.table containing the columns of interest

pyr0

column used for person-years per row

event0

column used for event status

names

columns for elements of the model, used to identify data columns

Term_n

term numbers for each element of the model

tform

list of string function identifiers, used for linear/step

a_n

list of initial parameter values, used to determine number of parameters

modelform

string specifying the model type: M, ME, A, PA, PAE, GMIX, GMIX-R, GMIX-E

fir

term number for the initial term, used for models of the form T0*f(Ti) in which the order matters

control

list of parameters controlling the convergence, see Def_Control() for options or vignette("starting_description")

keep_constant

binary values to denote which parameters to change

Value

returns a list of the final results

See Also

Other Poisson Wrapper Functions: RunPoissonEventAssignment(), RunPoissonRegression(), RunPoissonRegression_Guesses_CPP(), RunPoissonRegression_Joint_Omnibus(), RunPoissonRegression_Omnibus(), RunPoissonRegression_STRATA(), RunPoissonRegression_Tier_Guesses()

Examples

library(data.table)
## basic example code reproduced from the starting-description vignette

df <- data.table::data.table("UserID"=c(112, 114, 213, 214, 115, 116, 117),
           "Starting_Age"=c(18,  20,  18,  19,  21,  20,  18),
             "Ending_Age"=c(30,  45,  57,  47,  36,  60,  55),
          "Cancer_Status"=c(0,   0,   1,   0,   1,   0,   0),
                      "a"=c(0,   1,   1,   0,   1,   0,   1),
                      "b"=c(1,   1.1, 2.1, 2,   0.1, 1,   0.2),
                      "c"=c(10,  11,  10,  11,  12,  9,   11),
                      "d"=c(0,   0,   0,   1,   1,   1,   1))
# For the interval case
df$pyr <- df$Ending_Age - df$Starting_Age
pyr <- 'pyr'
event <- "Cancer_Status"
names <- c('a','b','c','d')
Term_n <- c(0,1,1,2)
tform <- c("loglin","lin","lin","plin")
modelform <- "M"
fir <- 0
a_n <- c(0.1, 0.1, 0.1, 0.1)

keep_constant <- c(0,0,0,0)

control <- list("Ncores"=2,'lr' = 0.75,'maxiter' = 5,'halfmax' = 5,
             'epsilon' = 1e-3,'dbeta_max' = 0.5, 'deriv_epsilon' = 1e-3,
             'abs_max'=1.0,'change_all'=TRUE,'dose_abs_max'=100.0,
             'verbose'=FALSE, 'double_step'=1)

e <- RunPoissonRegression_Single(df, pyr, event, names, Term_n, tform, a_n, modelform, fir, control)

[Package Colossus version 1.1.1 Index]