Git Product home page Git Product logo

aedseo's Introduction

aedseo aedseo website

R-CMD-check Codecov test coverage CRAN status Lifecycle: stable

Description

The Automated and Early Detection of Seasonal Epidemic Onset (aedseo) Package provides a powerful tool for automating the early detection of seasonal epidemic onsets in time series data. It offers the ability to estimate growth rates for consecutive time intervals and calculate the Sum of Cases (SoC) within those intervals. This package is particularly useful for epidemiologists, public health professionals, and researchers seeking to identify and respond to seasonal epidemics in a timely fashion.

Installation

# Install aedseo from CRAN
install.packages("aedseo")

Development vestion

You can install the development version of aedseo from GitHub with:

# install.packages("devtools")
devtools::install_github("ssi-dk/aedseo")

Getting started

To quickly get started with aedseo, follow these steps:

  1. Install the package using the code provided above.
  2. Load the package with library(aedseo).
  3. Create a time series data object (aedseo_tsd) from your data using the tsd() function.
  4. Apply the aedseo() function to estimate growth rates and detect seasonal epidemic onsets.
# Load the package
library(aedseo)

# Create a aedseo_tsd object from your data
tsd_data <- tsd(
  observed = c(100, 120, 150, 180, 220, 270),
  time = as.Date(c(
    "2023-01-01",
    "2023-01-02",
    "2023-01-03",
    "2023-01-04",
    "2023-01-05",
    "2023-01-06")
    ),
    time_interval = "day"
  )

# Detect seasonal epidemic onsets
aedseo_results <- aedseo(tsd = tsd_data, k = 3, level = 0.95, family = "poisson")

Vignette

For a more detailed introduction to the workflow of this package, see the introductory vignette.

# After installing the package
vignette("aedseo_introduction", package = "aedseo")

Contributing

We welcome contributions to the aedseo package. Feel free to open issues, submit pull requests, or provide feedback to help us improve.

aedseo's People

Contributors

telkamp7 avatar

Watchers

 avatar

aedseo's Issues

Improve the `autoplot()` and `plot()` methods

It would be nice to improve the autoplot() and plot() methods, by incorporating even more visualizations of the results.

One idea is to provide a 'slideshow' of relevant plots, that can be infered from the 'aedseo' class object. This includes:

  • An informative visualization of the number of observed cases. One could utilize the epidemiological season for this plot #15 .
  • A visualization of the growth rate

Release aedseo 0.1.0

First release:

Prepare for release:

  • git pull
  • Check if any deprecation processes should be advanced, as described in Gradual deprecation
  • urlchecker::url_check()
  • devtools::build_readme()
  • devtools::check(remote = TRUE, manual = TRUE)
  • devtools::check_win_devel()
  • git push
  • Draft blog post I probably wont write a blog post

Submit to CRAN:

  • usethis::use_version('minor')
  • devtools::submit_cran()
  • Approve email

Wait for CRAN...

  • Accepted ๐ŸŽ‰
  • Add preemptive link to blog post in pkgdown news menu
  • usethis::use_github_release()
  • usethis::use_dev_version(push = TRUE)
  • usethis::use_news_md()
  • Finish blog post
  • Tweet I wont do a tweet!

Rewrite the 'aedseo' function as an S3 Object @telkamp7

In addition to rewriting the aedseo function as an S3 Object, we also want to create a new predict.aedseo() function that supersede the current predict_growth_rate() function.

The class of the S3 object generated by the aedseo() function should be aedseo.

Improve the aedseo_introduction vignette

It would be beneficial to further improve the aedseo_introduction vignette. This improvement will be based on feedback by the users, but also some of the more general things that I have noted. Among other things, this includes:

  • Hide messages and warnings when importing libraries
  • Replace the 'nice' plot with the S3 plot method
  • Provide an example on real data Havent found a good data set

Release aedseo 0.1.1

Patch the following things:

Prepare for release:

  • git pull
  • Check current CRAN check results
  • Polish NEWS
  • usethis::use_github_links()
  • urlchecker::url_check()
  • devtools::build_readme()
  • devtools::check(remote = TRUE, manual = TRUE)
  • devtools::check_win_devel()
  • revdepcheck::revdep_check(num_workers = 4) Package not available for download atm
  • Update cran-comments.md
  • git push

Submit to CRAN:

  • usethis::use_version('patch')
  • devtools::submit_cran()
  • Approve email

Wait for CRAN...

  • Accepted ๐ŸŽ‰
  • usethis::use_github_release()
  • usethis::use_dev_version(push = TRUE)

Release aedseo 0.2.0

Implement features:

Prepare for release:

  • git pull
  • Check current CRAN check results
  • Check if any deprecation processes should be advanced, as described in Gradual deprecation
  • Polish NEWS
  • usethis::use_github_links()
  • urlchecker::url_check()
  • devtools::build_readme()
  • devtools::check(remote = TRUE, manual = TRUE)
  • devtools::check_win_devel()
    * [ ] revdepcheck::revdep_check(num_workers = 4)
  • Update cran-comments.md
  • git push
  • Draft blog post

Submit to CRAN:

  • usethis::use_version('minor')
  • devtools::submit_cran()
  • Approve email

Wait for CRAN...

  • Accepted ๐ŸŽ‰
  • Add preemptive link to blog post in pkgdown news menu
  • usethis::use_github_release()
  • usethis::use_dev_version(push = TRUE)
  • Finish blog post
  • Tweet

Implement a feature to estimate the time of seaonal epidemic peak

Based on analysis of the significant growth rate and the sum of cases over a five week period. There are some indications that these information might contain information on the timing of a seaonal epidemic peak. This should be investigated further, and possibly be implemented as a functionality in the R package.

Include negative.binomial regressions. @telkamp7

Include an option to choose the negative binomial as a family of distributions. Preferably, this can be done using MASS:glm.nb() to fit the model or by passing the MASS::negative.binomial() to the stats:glm() family variable.

Release aedseo 0.1.2

Prepare for release:

  • git pull
  • Check current CRAN check results
  • Polish NEWS
  • usethis::use_github_links()
  • urlchecker::url_check()
  • devtools::build_readme()
  • devtools::check(remote = TRUE, manual = TRUE)
    * [ ] devtools::check_win_devel()
    * [ ] revdepcheck::revdep_check(num_workers = 4)
  • Update cran-comments.md
  • git push

Submit to CRAN:

  • usethis::use_version('patch')
  • devtools::submit_cran()
  • Approve email

Wait for CRAN...

  • Accepted ๐ŸŽ‰
  • usethis::use_github_release()
  • usethis::use_dev_version(push = TRUE)

Implement a method to define epidemiological seasons

It would be beneficial to implement at method to define epidemiological seasons in the tsd() function.

Effectively, this could enhance communication of the results, as methods could easily be implemented to visualize the seasonal onset in consecutive epidemiological seasons, but also to just communicate if the seasonal epidemic has started within the current season.

Probably, this could be solved by selecting a given week that should slice years into e.g. 2015/2016 season (like week 26 or so).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.