Learn R Programming

edecob

The edecob package can detect sustained change in digital biomarker data. We account for noise using an autoregressive model and use confidence bounds to detect the change.

Example

library(edecob)

# Let us examine the example_data dataset
head(example_data, 3)
#>     subject study_day jump_height detect_lower detect_upper
#> 1 Subject 1         1    55.60844         -Inf     54.41227
#> 2 Subject 1         4    57.77688         -Inf     54.41227
#> 3 Subject 1         7    57.59584         -Inf     54.41227

# We apply the main fuction of the package onto our example_data
example_event <- edecob(example_data, med_win = c(-21,21), bt_tot_rep = 50,
                        min_change_dur = 50)
#> Warning in edecob(example_data, med_win = c(-21, 21), bt_tot_rep = 50,
#> min_change_dur = 50) :
#>   Removing rows where value is NA
names(example_event)
#> [1] "Subject 1"  "Subject 2"  "Subject 3"  "event_info"

# example_event contains the event data for each source
plot(example_event$`Subject 1`)
plot(example_event$`Subject 2`)
plot(example_event$`Subject 3`)

# example_event also contains a data frame containing the event information for all patients
example_event$event_info
#>           event_detected event_onset event_duration event_stop
#> Subject 1           TRUE         169             87       TRUE
#> Subject 2           TRUE         205             51       TRUE
#> Subject 3          FALSE         306             38      FALSE

# Using this data frame, we can draw a survival plot
library("survival")
plot(survfit(Surv(time = event_onset, event = event_detected) ~ 1,
             data = example_event$event_info),
     conf.int = FALSE, xlim = c(0,350), ylim = c(0,1), mark.time = TRUE,
     xlab = "Study Day", ylab = "Survival Probability", main = "Survival plot")

Methodology based on Bühlmann, P. (1998). Sieve Bootstrap for Smoothing in Nonstationary Time Series. The Annals of Statistics, 26(1), 48-83.

Copy Link

Version

Install

install.packages('edecob')

Monthly Downloads

174

Version

1.2.2

License

MIT + file LICENSE

Maintainer

Zheng Chen Man

Last Published

November 4th, 2022

Functions in edecob (1.2.2)

plot.edecob

Plot Event Data
smoother_resid

Residuals of the Smoother
detect_event

Detect Events
bt_smoother

Bootstrap the Smoother
conf_band

Confidence Bounds of the Smoother
edecob

Event DEtection using COnfidence Bounds
summary.edecob

Summarizing Event Detection Results
mov_med

Moving Median over a Time Window
example_data

Artificially generated data for examples