Calculate negative log-likelihood (deviance) for one antigen:isotype pair and incidence rate
Source:R/f_dev.r
f_dev0.Rd
Calculate negative log-likelihood (deviance) for one antigen:isotype pair and incidence rate
Arguments
- lambda
numeric()
incidence parameter, in events per person-year- csdata
cross-sectional sample data containing variables
value
andage
- lnpars
longitudinal antibody decay model parameters
alpha
,y1
, andd
- cond
measurement noise parameters
nu
,eps
,y.low
, andy.high
Value
a numeric()
negative log-likelihood,
corresponding to input lambda
Examples
library(dplyr)
library(tibble)
# load in longitudinal parameters
curve_params = load_curve_params("https://osf.io/download/rtw5k")
xs_data <- "https://osf.io/download//n6cp3/" %>%
load_pop_data()
#Load noise params
noise_params <- tibble(
antigen_iso = c("HlyE_IgG", "HlyE_IgA"),
nu = c(0.5, 0.5), # Biologic noise (nu)
eps = c(0, 0), # M noise (eps)
y.low = c(1, 1), # low cutoff (llod)
y.high = c(5e6, 5e6)) # high cutoff (y.high)
cur_antibody = "HlyE_IgA"
cur_data <-
xs_data %>%
dplyr::filter(
.data$catchment == "dhaka",
.data$antigen_iso == cur_antibody) %>%
dplyr::slice_head(n = 100)
cur_curve_params <-
curve_params %>%
dplyr::filter(.data$antigen_iso == cur_antibody) %>%
dplyr::slice_head(n = 100)
cur_noise_params <-
noise_params %>%
dplyr::filter(.data$antigen_iso == cur_antibody)
if(!is.element('d', names(cur_curve_params)))
{
cur_curve_params <-
cur_curve_params %>%
dplyr::mutate(
alpha = .data$alpha * 365.25,
d = .data$r - 1)
}
lambda = 0.1
f_dev0(
lambda = lambda,
csdata = cur_data,
lnpars = cur_curve_params,
cond = cur_noise_params
)
#> [1] 390.8284