Learn R Programming

CategoryBadge
Usage
Release
Development

Introduction

  • In this package, we present the Modified Detecting Deviating Cells (MDDC) algorithm for adverse event identification.
  • For a certain time period, the spontaneous reports can be extracted from the safety database and depicted as an $I \times J$ contingency table, where:
    • $I$ denotes the total number of AEs
    • $J$ denotes the total number of drugs or vaccines
    • With cell counts $n_{ij}$ the total number of reported cases corresponding to the $j$-th drug/vaccine and $i$-th AE
  • We are interested in which (AE, drug or vaccine) pairs are signals. The signals refer to potential adverse events that may be caused by a drug/vaccine.
  • In the contingency table setting, the signals refer to the cells with $n_{ij}$ abnormally higher than the expected values.
  • Rousseeuw and Bossche (2018) proposed the Detecting Deviating Cells (DDC) algorithm for outlier identification in a multivariate dataset.
  • The original DDC algorithm assumes multivariate normality of the data and selects cutoff values based on this assumption. We modify the DDC algorithm to better suit the discrete nature of adverse event data in pharmacovigilance that clearly do not follow a multivariate normal distribution.
  • Our Modified Detecting Deviating Cells (MDDC) algorithm has the following characteristics:
    1. It is easy to compute.
    2. It considers AE relationships.
    3. It depends on data-driven cutoffs.
    4. It is independent of the use of ontologies.
  • The MDDC algorithm has five steps, with the first two steps identifying univariate outliers via cutoffs, and the next three steps evaluating the signals via the use of AE correlations. The algorithm can be found at MDDC algorithm.

Authors

Maintainers

Documentation

The documentation is hosted at - https://niuniular.github.io/MDDC/index.html

Citation

If you use this package in your research or work, please cite it as follows:

@misc{liu2024mddcrpythonpackage,
      title={MDDC: An R and Python Package for Adverse Event Identification in Pharmacovigilance Data}, 
      author={Anran Liu and Raktim Mukhopadhyay and Marianthi Markatou},
      year={2024},
      eprint={2410.01168},
      archivePrefix={arXiv},
      primaryClass={stat.CO},
      url={https://arxiv.org/abs/2410.01168}, 
}

Funding Information

The work has been supported by Food and Drug Administration, and Kaleida Health Foundation.

References

Liu, A., Mukhopadhyay, R., and Markatou, M. (2024). MDDC: An R and Python package for adverse event identification in pharmacovigilance data. arXiv preprint. arXiv:2410.01168

Liu, A., Markatou, M., Dang, O., and Ball, R. (2024). Pattern discovery in pharmacovigilance through the Modified Detecting Deviating Cells (MDDC) algorithm. Technical Report, Department of Biostatistics, University at Buffalo.

Rousseeuw, P. J., and Bossche, W. V. D. (2018). Detecting deviating data cells. Technometrics, 60(2), 135-145.

Copy Link

Version

Install

install.packages('MDDC')

Monthly Downloads

305

Version

1.1.0

License

GPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

Anran Liu

Last Published

April 7th, 2025

Functions in MDDC (1.1.0)

report_drug_AE_pairs

Report the potential adverse events for drugs from contingency table
generate_contin_table_with_clustered_AE

Generate simulated contingency tables with the option of incorporating adverse event correlation within clusters.
statin49_AE_idx

Cluster index of the FDA statin dataset with 49 adverse events
mddc_boxplot

Modified Detecting Deviating Cells (MDDC) algorithm for adverse event signal identification with boxplot method for cutoff selection.
mddc_mc

Modified Detecting Deviating Cells (MDDC) algorithm for adverse event signal identification with Monte Carlo (MC) method for cutoff selection.
statin49

FDA statin dataset with 49 adverse events
sedative1000

FDA dataset for sedatives with 1000 adverse events
generate_contin_table_with_clustered_AE_with_tol

Generate simulated contingency tables with the option of incorporating adverse event correlation within clusters and tolerance for total report count.
statin101

FDA statin dataset with 101 adverse events
MDDC-package

Modified Detecting Deviating Cells Algorithm in Pharmacovigilance
find_optimal_coef

Find Adaptive Boxplot Coefficient `coef` via Grid Search
get_expected_counts

Compute the Expected Count Matrix from a Contingency Table
check_and_fix_contin_table

Verifying and correcting the input \(I\) by \(J\) contingency table
get_std_pearson_res

Computing the standardized Pearson residuals for a given \(I \times J\) contingency table
betablocker500

FDA dataset for beta blockers with 500 adverse events
plot_heatmap

Plot Heatmap