Dieter Menne
Menne Biomed Consulting Tübingen, Germany
https://www.menne-biomed.de
dieter.menne@menne-biomed.de
A package and a Shiny web
application to create simulated gastric emptying data, and to analyze
gastric emptying from clinical studies using a population fit with R and
package nlme
. In addition, Bayesian fits with Stan to handle critical cases are
implemented.
Part of the work has been supported by section GI MRT, Klinik für Gastroenterologie und Hepatologie, Universitätsspital Zürich; thanks to Werner Schwizer and Andreas Steingötter for their contributions.
The package is available from CRAN and github (source, documentation). To install, use:
devtools::install_github("dmenne/gastempt")
Compilation of the Stan models needs several minutes.
The web interface can be installed on your computer, or run as web app.
Two models are implemented in the web interface
linexp, vol = v0 * (1 + kappa * t / tempt) * exp(-t / tempt):
Recommended
for gastric emptying curves with an initial volume overshoot from
secretion. With parameter kappa > 1, there is a maximum after t=0.
When all emptying curves start with a steep drop, this model can be
difficult to fit.powexp, vol = v0 * exp(-(t / tempt) ^ beta):
The power
exponential function introduced by Elashof et. al. to fit scintigraphic
emptying data; this type of data does not have an initial overshoot by
design. Compared to the linexp
model, fitting
powexp
is more reliable and rarely fails to converge in the
presence of noise and outliers. The power exponential can be useful with
MRI data when there is an unusual late phase in emptying.nlme
in package R
nlme
.Program with simulated data (needs about 40 seconds till plot shows):
library(gastempt)
dd = simulate_gastempt(n_records = 6, seed = 471)
d = dd$data
ret = stan_gastempt(d)
print(ret$coef)
print(ret$plot)
The image cannot be compiled on the Docker hub because the build runs out of memory in the standard configuration.
gastempt
docker run --name gastempt --restart unless-stopped -p 3838:3838 -d dmenne/gastempt
localhost:3838
.