Skip to contents

Similar parameterisation to the Emax model but with non-asymptotic maximal effect (Emax). Proposed by proposed by Fu and Manner (2010)

Usage

titp(
  pool.emax = "rel",
  method.emax = "common",
  pool.rate = "rel",
  method.rate = "common",
  p.expon = FALSE
)

Arguments

pool.emax

Pooling for exponential Emax parameter. Can take "rel" or "abs" (see details).

method.emax

Method for synthesis of exponential Emax parameter. Can take "common, "random", or be assigned a numeric value (see details).

pool.rate

Pooling for parameter controlling rate of onset. Default is NULL which avoids including this parameter (i.e. fixes it to 1 for all treatments). Can take "rel" or "abs" (see details).

method.rate

Method for synthesis of parameter controlling rate of onset. Can take "common, "random", or be assigned a numeric value (see details).

p.expon

Should parameters that can only take positive values be modeled on the exponential scale (TRUE) or should they be assigned a prior that restricts the posterior to positive values (FALSE)

Value

An object of class("timefun")

Details

$${E_{max}}\times\frac{(1-exp(-{rate}\times{x}))}{(1-exp(-{rate}\times{max(x)}))}$$

Time-course parameters

Time-course parameters in the model must be specified using a pool and a method prefix.

pool is used to define the approach used for pooling of a given time-course parameter and can take any of:

ArgumentModel specification
"rel"Indicates that relative effects should be pooled for this time-course parameter. Relative effects preserve randomisation within included studies, are likely to vary less between studies (only due to effect modification), and allow for testing of consistency between direct and indirect evidence. Pooling follows the general approach for Network Meta-Analysis proposed by Lu and Ades (2004) .
"abs"Indicates that study arms should be pooled across the whole network for this time-course parameter independently of assigned treatment to estimate an absolute effect. This implies estimating a single value across the network for this time-course parameter, and may therefore be making strong assumptions of similarity.

method is used to define the model used for meta-analysis for a given time-course parameter and can take any of the following values:

ArgumentModel specification
"common"Implies that all studies estimate the same true effect (often called a "fixed effect" meta-analysis)
"random"Implies that all studies estimate a separate true effect, but that each of these true effects vary randomly around a true mean effect. This approach allows for modelling of between-study heterogeneity.
numeric()Assigned a numeric value, indicating that this time-course parameter should not be estimated from the data but should be assigned the numeric value determined by the user. This can be useful for fixing specific time-course parameters (e.g. Hill parameters in Emax functions, power parameters in fractional polynomials) to a single value.

References

Fu H, Manner D (2010). “Bayesian adaptive dose-finding studies with delayed responses.” J Biopharm Stat, 20(5), 1055-1070. doi:10.1080/10543400903315740 .

Lu G, Ades AE (2004). “Combination of direct and indirect evidence in mixed treatment comparisons.” Stat Med, 23(20), 3105-24. ISSN 0277-6715 (Print) 0277-6715 (Linking), doi:10.1002/sim.1875 , https://pubmed.ncbi.nlm.nih.gov/15449338/.

Examples

titp(pool.emax="rel", method.emax="random")
#> 'rate' parameters must take positive values.
#>  Default half-normal prior restricts posterior to positive values.
#> $name
#> [1] "itp"
#> 
#> $fun
#> ~emax * (1 - exp(-rate * time))/(1 - exp(-rate * max(time)))
#> <environment: 0x557ad9d039d0>
#> 
#> $f
#> function (time, beta.1, beta.2) 
#> {
#>     y <- beta.1 * (1 - exp(-beta.2 * time))/(1 - exp(-beta.2 * 
#>         max(time)))
#>     return(y)
#> }
#> <bytecode: 0x557ae3726638>
#> <environment: 0x557ad9d039d0>
#> 
#> $latex
#> [1] "\beta_1 * (1-exp(-\beta_2*x_m)) / (1-exp(-\beta_2*max(x_m)))"
#> 
#> $params
#> [1] "emax" "rate"
#> 
#> $nparam
#> [1] 2
#> 
#> $jags
#> [1] "beta.1[i,k] * ((1-exp(-beta.2[i,k]*time[i,m])) / (1-exp(-beta.2[i,k]*maxtime)))"
#> 
#> $apool
#>  emax  rate 
#> "rel" "rel" 
#> 
#> $amethod
#>     emax     rate 
#> "random" "common" 
#> 
#> $bname
#>     emax     rate 
#> "beta.1" "beta.2" 
#> 
#> $bpool
#>     emax     rate 
#> "pool.1" "pool.2" 
#> 
#> $bmethod
#>       emax       rate 
#> "method.1" "method.2" 
#> 
#> $p.expon
#> [1] FALSE
#> 
#> attr(,"class")
#> [1] "timefun"
titp(pool.emax="abs")
#> 'rate' parameters must take positive values.
#>  Default half-normal prior restricts posterior to positive values.
#> $name
#> [1] "itp"
#> 
#> $fun
#> ~emax * (1 - exp(-rate * time))/(1 - exp(-rate * max(time)))
#> <environment: 0x557ad940e2a0>
#> 
#> $f
#> function (time, beta.1, beta.2) 
#> {
#>     y <- beta.1 * (1 - exp(-beta.2 * time))/(1 - exp(-beta.2 * 
#>         max(time)))
#>     return(y)
#> }
#> <bytecode: 0x557ae3726638>
#> <environment: 0x557ad940e2a0>
#> 
#> $latex
#> [1] "\beta_1 * (1-exp(-\beta_2*x_m)) / (1-exp(-\beta_2*max(x_m)))"
#> 
#> $params
#> [1] "emax" "rate"
#> 
#> $nparam
#> [1] 2
#> 
#> $jags
#> [1] "beta.1 * ((1-exp(-beta.2[i,k]*time[i,m])) / (1-exp(-beta.2[i,k]*maxtime)))"
#> 
#> $apool
#>  emax  rate 
#> "abs" "rel" 
#> 
#> $amethod
#>     emax     rate 
#> "common" "common" 
#> 
#> $bname
#>     emax     rate 
#> "beta.1" "beta.2" 
#> 
#> $bpool
#>     emax     rate 
#> "pool.1" "pool.2" 
#> 
#> $bmethod
#>       emax       rate 
#> "method.1" "method.2" 
#> 
#> $p.expon
#> [1] FALSE
#> 
#> attr(,"class")
#> [1] "timefun"