In addition to assisting researchers with their research, we also develop tools to assist with various tasks (primarily statistical and reporting). In the spirit of open science, we share these tools on various sharing platforms.
R is one of the two main statistical programming languages used at CTU Bern. During our work, we have developed the following packages for various tasks.
With accrualPlot
, it is easy to depict recruitment as a cumulative
incidence curve, a bar plot or to estimate the time point at which a
given number of participants will be been enrolled.
More information on accrualPlot
is available
here.
btabler
is a wrapper around the
xtable
package
allowing more optimized tables for use in LaTeX reports.
More information on btabler
is available
here.
HSAr
is a by-product of CTU Bern’s involvement in the SNFs Smarter
Health Case National Research Programme (NRP74).
It provides an approach for creating so-called Hospital Service Areas -
aggregated areas supposed to reflect the patterns of flow from people
live to where they go to hospital. The method is described
here.
(The main repository is here)
Note: HSAr
was written using packages which have since been
deprecated. This makes using the package more difficult (if at all
possible). The future of the package is under consideration.
Risk based monitoring was introduced as a GCP topic in the ICH GCP
E6(R2) revision with the aim of identifying particularly important risks
to a trial in order to circumvent them earlier and limit their influence
on a given trial. kpitools
has tools to assist in the calculation and
reporting of such risks (i.e. Key Performance Indicators, KPIs).
More information on kpitools
is available
here.
presize
is a package for precision based sample size calculations.
Rather than having a specific hypothesis to test, a trial might be
rather aimed at estimating the magnitude of an effect and want to have
an estimate with a certain precision (e.g. ‘how wide would my confidence
interval be with so-and-so many participants?’, or ‘how many
participants would be required to attain a confidence interval so
wide?’).
presize
is available on
CRAN and a
user-friendly, non-programmatic version of the application is available
here for those unfamiliar with R.
redcaptools
provides tools to support working with REDCap datasets. It
contains functions for exporting data through the REDCap Application
Programming Interface, functions for preparing data for downstream use
(e.g. adding labels, converting strings to dates). It also provides
methods to export data in a form based manner (i.e. each instrument is a
separate data frame) and to split a standard export into forms.
More information on redcaptools
is available
here.
Annual Safety Reports (ASR) are an important part of the reporting
obligations for Clinical Trials. They are also time consuming to
prepare. SwissASR
provides a simple way to fill out the ASR in an
automated manner. Prepare the data in the manner expected by SwissASR
,
and you can easily rerun the code the next year, with minimal
modification.
Visit the SwissASR
package
website or Swiss Clinical Trial
Organizations Statistics and Methodology Platform
website
for more information.
Shiny is an extension to the R language for creating interactive web applications. For example, such applications could be used to display results, perform calculations, or provide simple data exploration capabilities. CTU Bern has it’s own shiny server where we can host such applications.
We currently host the following applications:
covid19sm
Aims to offer monthly monitoring of the impact of the COVID-19 pandemic on the life and health of the Swiss population.presize
is the companion app to thepresize
R package detailed above. It provides methods for precision based sample size calculation.- The SCTO Monitoring platform developed a Risk Based Monitoring Score Calculator for determining the appropriate degree of monitoring for a trial. CTU bern and the SCTO Statistics and Methodology converted this to a simple to use Shiny application. See the SCTO site for more information.
If you have an idea for an application, get in touch via the consulting form and we would be happy discuss possibilities.
CTU Bern also has a so-called
universe, hosted by
ROpenSci, for easier installation of
our R packages. For packages not on CRAN, and those with versions not
yet posted to CRAN, it allows the installation of packages as if the
packages in the universe were a part of CRAN. For instance, presize
is
on CRAN but it’s
development version is on GitHub.
The CRAN version of the package can be installed with
install.packages("presize")
, while the development version must be
installed with remotes::install_github("CTU-Bern/presize")
. By using
the CTU-Bern universe, it is possible to install the development version
of presize
via the first syntax. The following code can be used to
tell R to search the CTU Bern universe for a package first and install
it from there if available and if not search CRAN instead (or whatever
repository is mentioned in the second place).
options(repos = c(ctu = "https://ctu-bern.r-universe.dev",
cran = "https://cloud.r-project.org"))
presize
, or any of the packages mentioned above, can then be installed
into R via e.g. install.packages("presize")
.
As well as the installation of the packages, the universe also has the vignettes and articles compiled
The options
code above should be put towards the top of a script or
perhaps in a .Rprofile
file (typically stored in the Documents or
project folder and is used for setting your personal defaults). See
here
for more details.
Stata is the second programming language primarily used at CTU Bern. Again, we have developed various codes that may be of general interest to users.
btable
makes creating baseline tables simple in Stata. It is a very
flexible approach used by most statisticians at CTU Bern, even those
that primarily use R for their analyses.
This repository contains code for reading secuTrial data into Stata and does a lot of preparatory tasks such as labeling variables and formatting dates.
This stata program facilitates the production of landmark analysis plots.
CTU Bern was also actively involved in programming the
secuTrialR
package for loading secuTrial datasets in to R.