Description
Medical Devices Surveillance.
Description
A set of core functions for handling medical device event data in the context of post-market surveillance, pharmacovigilance, signal detection and trending, and regulatory reporting. Primary inputs are data on events by device and data on exposures by device. Outputs include: standardized device-event and exposure datasets, defined analyses, and time series.
README.md
Why Use mds
?
Medical device event data are messy.
Common challenges include:
- Performing ongoing surveillance on messy data
- Quickly answering simple questions such as:
- Are events trending up?
- How did my trends look 1 year ago? 2 years ago?
- Incompatibility of various sources of device-events
- Difficulty integrating exposures, a.k.a. denominator data
- Understanding all the possible combinations to analyze
- Application of disproportionality analysis (DPA)
- Documentation of analyses in a auditable, reproducible way
How Do I Use mds
?
The mds
package provides a standardized framework to address these challenges:
- Standardize events involving medical devices
- Standardize exposures of the device (also known as opportunities for an event to occur, or event denominator)
- Enumerate possible analyses in a flexible way
- Generate times series of analyses for trending over time
- Set up analyses for easy application of disproportionality analysis (DPA)
- Save all files in lightweight
R
files for auditability, documentation, and reproducibility
Note on Statistical Algorithms
mds
data and analysis standards allow for seamless application of various statistical trending algorithms via the mdsstat
package (under development).
Raw Data to Trending in 4 Steps
The general workflow to go from data to trending over time is as follows:
- Use
deviceevent()
to standardize device-event data. - Use
exposure()
to standardize exposure data (optional). - Use
define_analyses()
to enumerate possible analysis combinations. - Use
time_series()
to generate counts (and/or rates) by time based on your defined analyses.
Live Example
library(mds)
# Step 1 - Device Events
de <- deviceevent(
maude,
time="date_received",
device_hierarchy=c("device_name", "device_class"),
event_hierarchy=c("event_type", "medical_specialty_description"),
key="report_number",
covariates="region",
descriptors="_all_")
# Step 2 - Exposures (Optional step)
ex <- exposure(
sales,
time="sales_month",
device_hierarchy="device_name",
match_levels="region",
count="sales_volume")
# Step 3 - Define Analyses
da <- define_analyses(
de,
device_level="device_name",
exposure=ex,
covariates="region")
# Step 4 - Time Series
ts <- time_series(
da,
deviceevents=de,
exposure=ex)
Plot Time Series of Counts and Rates
plot(ts[[4]], "rate", type='l')