Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

doc: update installation instructions to reference stable branch #288

Merged
merged 1 commit into from
Jan 30, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 20 additions & 18 deletions README.Rmd
Original file line number Diff line number Diff line change
Expand Up @@ -24,24 +24,26 @@ knitr::opts_chunk$set(

## Installation

You can install the development version of epipredict from [GitHub](https://github.com/) with:
To install (unless you're making changes to the package, use the stable version):

``` r
# install.packages("remotes")
remotes::install_github("cmu-delphi/epipredict")
```r
# Stable version
pak::pkg_install("cmu-delphi/epipredict@main")

# Dev version
pak::pkg_install("cmu-delphi/epipredict@dev")
```

## Documentation

You can view documentation for the `main` branch at <https://cmu-delphi.github.io/epipredict>.


## Goals for `epipredict`

**We hope to provide:**

1. A set of basic, easy-to-use forecasters that work out of the box. You should be able to do a reasonably limited amount of customization on them. For the basic forecasters, we currently provide:
* Baseline flatline forecaster
1. A set of basic, easy-to-use forecasters that work out of the box. You should be able to do a reasonably limited amount of customization on them. For the basic forecasters, we currently provide:
* Baseline flatline forecaster
* Autoregressive forecaster
* Autoregressive classifier
* CDC FluSight flatline forecaster
Expand All @@ -54,27 +56,27 @@ You can view documentation for the `main` branch at <https://cmu-delphi.github.i
**Target audiences:**

* Basic. Has data, calls forecaster with default arguments.
* Intermediate. Wants to examine changes to the arguments, take advantage of
* Intermediate. Wants to examine changes to the arguments, take advantage of
built in flexibility.
* Advanced. Wants to write their own forecasters. Maybe willing to build up
from some components.
* Advanced. Wants to write their own forecasters. Maybe willing to build up
from some components.

The Advanced user should find their task to be relatively easy. Examples of
The Advanced user should find their task to be relatively easy. Examples of
these tasks are illustrated in the [vignettes and articles](https://cmu-delphi.github.io/epipredict).

See also the (in progress) [Forecasting Book](https://cmu-delphi.github.io/delphi-tooling-book/).

## Intermediate example

The package comes with some built-in historical data for illustration, but
up-to-date versions of this could be downloaded with the
[`{epidatr}` package](https://cmu-delphi.github.io/epidatr/)
and processed using
up-to-date versions of this could be downloaded with the
[`{epidatr}` package](https://cmu-delphi.github.io/epidatr/)
and processed using
[`{epiprocess}`](https://cmu-delphi.github.io/epiprocess/).[^1]

[^1]: Other epidemiological signals for non-Covid related illnesses are also
available with [`{epidatr}`](https://github.com/cmu-delphi/epidatr) which
interfaces directly to Delphi's
[^1]: Other epidemiological signals for non-Covid related illnesses are also
available with [`{epidatr}`](https://github.com/cmu-delphi/epidatr) which
interfaces directly to Delphi's
[Epidata API](https://cmu-delphi.github.io/delphi-epidata/)

```{r epidf, message=FALSE}
Expand All @@ -97,7 +99,7 @@ two_week_ahead <- arx_forecaster(
two_week_ahead
```

In this case, we have used a number of different lags for the case rate, while
In this case, we have used a number of different lags for the case rate, while
only using 3 weekly lags for the death rate (as predictors). The result is both
a fitted model object which could be used any time in the future to create
different forecasts, as well as a set of predicted values (and prediction
Expand Down
44 changes: 24 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,15 @@ our best to address them quickly.

## Installation

You can install the development version of epipredict from
[GitHub](https://github.com/) with:
To install (unless you’re making changes to the package, use the stable
version):

``` r
# install.packages("remotes")
remotes::install_github("cmu-delphi/epipredict")
# Stable version
pak::pkg_install("cmu-delphi/epipredict@main")

# Dev version
pak::pkg_install("cmu-delphi/epipredict@dev")
```

## Documentation
Expand All @@ -35,24 +38,25 @@ You can view documentation for the `main` branch at
You should be able to do a reasonably limited amount of
customization on them. For the basic forecasters, we currently
provide:
- Baseline flatline forecaster
- Autoregressive forecaster
- Autoregressive classifier
- CDC FluSight flatline forecaster
- Baseline flatline forecaster
- Autoregressive forecaster
- Autoregressive classifier
- CDC FluSight flatline forecaster
2. A framework for creating custom forecasters out of modular
components. There are four types of components:
- Preprocessor: do things to the data before model training
- Trainer: train a model on data, resulting in a fitted model object
- Predictor: make predictions, using a fitted model object
- Postprocessor: do things to the predictions before returning
- Preprocessor: do things to the data before model training
- Trainer: train a model on data, resulting in a fitted model
object
- Predictor: make predictions, using a fitted model object
- Postprocessor: do things to the predictions before returning

**Target audiences:**

- Basic. Has data, calls forecaster with default arguments.
- Intermediate. Wants to examine changes to the arguments, take
advantage of built in flexibility.
- Advanced. Wants to write their own forecasters. Maybe willing to build
up from some components.
- Basic. Has data, calls forecaster with default arguments.
- Intermediate. Wants to examine changes to the arguments, take
advantage of built in flexibility.
- Advanced. Wants to write their own forecasters. Maybe willing to
build up from some components.

The Advanced user should find their task to be relatively easy. Examples
of these tasks are illustrated in the [vignettes and
Expand All @@ -67,7 +71,7 @@ The package comes with some built-in historical data for illustration,
but up-to-date versions of this could be downloaded with the
[`{epidatr}` package](https://cmu-delphi.github.io/epidatr/) and
processed using
[`{epiprocess}`](https://cmu-delphi.github.io/epiprocess/).[^1]
[`{epiprocess}`](https://cmu-delphi.github.io/epiprocess/).\[1\]

``` r
library(epipredict)
Expand Down Expand Up @@ -110,7 +114,7 @@ two_week_ahead <- arx_forecaster(
two_week_ahead
#> ══ A basic forecaster of type ARX Forecaster ═══════════════════════════════
#>
#> This forecaster was fit on 2023-12-23 09:12:46.
#> This forecaster was fit on 2024-01-29 15:10:01.
#>
#> Training data was an <epi_df> with:
#> • Geography: state,
Expand Down Expand Up @@ -203,7 +207,7 @@ through the end of 2021 for the 14th of January 2022. A prediction for
the death rate per 100K inhabitants is available for every state
(`geo_value`) along with a 90% predictive interval.

[^1]: Other epidemiological signals for non-Covid related illnesses are
1. Other epidemiological signals for non-Covid related illnesses are
also available with
[`{epidatr}`](https://github.com/cmu-delphi/epidatr) which
interfaces directly to Delphi’s [Epidata
Expand Down
Loading