RunPoissonRegression {Colossus} | R Documentation |
Performs basic poisson regression
Description
RunPoissonRegression
uses user provided data, person-year/event columns, vectors specifying the model, and options to control the convergence and starting positions
Usage
RunPoissonRegression(
df,
pyr0,
event0,
names,
Term_n,
tform,
keep_constant,
a_n,
modelform,
fir,
der_iden,
control
)
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 |
keep_constant |
binary values to denote which parameters to change |
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 |
der_iden |
number for the subterm to test derivative at, only used for testing runs with a single varying parameter, should be smaller than total number of parameters |
control |
list of parameters controlling the convergence, see Def_Control() for options or vignette("starting_description") |
Value
returns a list of the final results
See Also
Other Poisson Wrapper Functions:
RunPoissonEventAssignment()
,
RunPoissonRegression_Guesses_CPP()
,
RunPoissonRegression_Joint_Omnibus()
,
RunPoissonRegression_Omnibus()
,
RunPoissonRegression_STRATA()
,
RunPoissonRegression_Single()
,
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)
der_iden <- 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(df, pyr, event, names, Term_n, tform, keep_constant,
a_n, modelform, fir, der_iden, control)