Skip to content

Commit 0b15349

Browse files
committed
update readme
1 parent bb8e892 commit 0b15349

2 files changed

Lines changed: 134 additions & 55 deletions

File tree

README.md

Lines changed: 134 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,96 +1,161 @@
1-
---
2-
output: github_document
3-
---
41

52
<!-- README.md is generated from README.Rmd. Please edit that file -->
63

7-
8-
94
# reviser <img src="man/figures/logo.png" align="right" height="139" />
105

116
<!-- badges: start -->
12-
[![Project Status: Active – The project has reached a stable, usable state and is being actively developed.](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active)
13-
[![CRAN status](https://www.r-pkg.org/badges/version/reviser)](https://CRAN.R-project.org/package=reviser)
14-
[![CRAN RStudio mirror downloads](https://cranlogs.r-pkg.org/badges/grand-total/reviser)](https://r-pkg.org/pkg/reviser)
7+
8+
[![Project Status: Active – The project has reached a stable, usable
9+
state and is being actively
10+
developed.](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active)
11+
[![CRAN
12+
status](https://www.r-pkg.org/badges/version/reviser)](https://CRAN.R-project.org/package=reviser)
13+
[![CRAN RStudio mirror
14+
downloads](https://cranlogs.r-pkg.org/badges/grand-total/reviser)](https://r-pkg.org/pkg/reviser)
1515
[![R-CMD-check](https://github.com/ropensci/reviser/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/ropensci/reviser/actions/workflows/R-CMD-check.yaml)
1616
[![lint](https://github.com/ropensci/reviser/actions/workflows/lint.yaml/badge.svg)](https://github.com/ropensci/reviser/actions/workflows/lint.yaml)
1717
[![pkgcheck](https://github.com/ropensci/reviser/workflows/pkgcheck/badge.svg)](https://github.com/ropensci/reviser/actions?query=workflow%3Apkgcheck)
18-
[![Lifecycle: stable](https://img.shields.io/badge/lifecycle-stable-green.svg)](https://lifecycle.r-lib.org/articles/stages.html#stable)
19-
[![reviser status badge](https://marcburri.r-universe.dev/badges/reviser)](https://marcburri.r-universe.dev/reviser)
20-
[![Codecov test coverage](https://codecov.io/gh/ropensci/reviser/graph/badge.svg)](https://app.codecov.io/gh/ropensci/reviser)
18+
[![Lifecycle:
19+
stable](https://img.shields.io/badge/lifecycle-stable-green.svg)](https://lifecycle.r-lib.org/articles/stages.html#stable)
20+
[![reviser status
21+
badge](https://marcburri.r-universe.dev/badges/reviser)](https://marcburri.r-universe.dev/reviser)
22+
[![Codecov test
23+
coverage](https://codecov.io/gh/ropensci/reviser/graph/badge.svg)](https://app.codecov.io/gh/ropensci/reviser)
2124
<!-- badges: end -->
2225

23-
**reviser** is an R package designed for working with time-series vintages data. The package provides tools to clean, visualize, and analyze time-series revisions.
26+
**reviser** is an R package designed for working with time-series
27+
vintages data. The package provides tools to clean, visualize, and
28+
analyze time-series revisions.
2429

2530
## Why reviser?
2631

27-
Economic data often arrives in multiple waves—with initial estimates updated or revised as more complete information becomes available (See the vignette [**the role and importance of revisions**](https://docs.ropensci.org/reviser/articles/literature-review.html)). These revisions, while common, can have major implications for how economic conditions are perceived and how decisions are made by policymakers, analysts, and markets. Yet, tools to systematically analyze, visualize, and communicate these revisions are still limited. This is where the R package **reviser** comes in.
28-
29-
**reviser** is built to support transparent, reproducible workflows for tracking and interpreting data revisions. Whether you're evaluating GDP estimates, inflation statistics, or high-frequency indicators, **reviser** helps quantify how vintages evolve, assess their reliability, and highlight cases where revisions may alter the economic narrative.
32+
Economic data often arrives in multiple waves—with initial estimates
33+
updated or revised as more complete information becomes available (See
34+
the vignette [**the role and importance of
35+
revisions**](https://docs.ropensci.org/reviser/articles/literature-review.html)).
36+
These revisions, while common, can have major implications for how
37+
economic conditions are perceived and how decisions are made by
38+
policymakers, analysts, and markets. Yet, tools to systematically
39+
analyze, visualize, and communicate these revisions are still limited.
40+
This is where the R package **reviser** comes in.
41+
42+
**reviser** is built to support transparent, reproducible workflows for
43+
tracking and interpreting data revisions. Whether you’re evaluating GDP
44+
estimates, inflation statistics, or high-frequency indicators,
45+
**reviser** helps quantify how vintages evolve, assess their
46+
reliability, and highlight cases where revisions may alter the economic
47+
narrative.
3048

3149
### Real-world relevance
32-
The importance of revisions isn’t just academic. They shape real-world outcomes:
33-
34-
![Revision paths for Euro Area GDP (Sources: BEA, Eurostat)](man/figures/gdp_over_time.jpeg)
35-
36-
- US GDP 2015-Q1 --- Weather or Weakness?: A sharp downward revision from +0.1% to -0.2% sparked fears of a slowdown—until a later benchmark revision lifted it back to +0.8%, highlighting challenges in seasonal adjustment.
3750

38-
- Euro Area GDP in 2012Q1 --- A Recession Delayed?: A flash estimate of 0.0% avoided the recession label—until it was revised to -0.1%, confirming back-to-back contractions and altering the policy discussion at a critical time.
39-
40-
These examples underscore how even small numerical changes can shift narratives, delay responses, and affect credibility.
41-
42-
**reviser** is an R package designed to streamline the analysis and visualization of data revisions—especially in the context of official statistics and macroeconomic indicators. Built with tidy principles and seamless integration in mind, reviser offers intuitive tools to compare data vintages, quantify revision patterns, and produce publication-ready outputs. Whether you're tracking GDP estimate updates or evaluating forecast accuracy over time, **reviser** provides a robust and flexible framework tailored for economists, data analysts, and statistical agencies alike.
43-
44-
The **reviser** package provides a comprehensive toolkit for analyzing data revisions — crucial for anyone working with real-time data. It allows users to **visualize**, **analyze**, and **evaluate** the impact of data updates across different release vintages, helping to understand and analyze revision patterns.
51+
The importance of revisions isn’t just academic. They shape real-world
52+
outcomes:
53+
54+
<figure>
55+
<img src="man/figures/gdp_over_time.jpeg"
56+
alt="Revision paths for Euro Area GDP (Sources: BEA, Eurostat)" />
57+
<figcaption aria-hidden="true">Revision paths for Euro Area GDP
58+
(Sources: BEA, Eurostat)</figcaption>
59+
</figure>
60+
61+
- US GDP 2015-Q1 — Weather or Weakness?: A sharp downward revision from
62+
+0.1% to -0.2% sparked fears of a slowdown—until a later benchmark
63+
revision lifted it back to +0.8%, highlighting challenges in seasonal
64+
adjustment.
65+
66+
- Euro Area GDP in 2012Q1 — A Recession Delayed?: A flash estimate of
67+
0.0% avoided the recession label—until it was revised to -0.1%,
68+
confirming back-to-back contractions and altering the policy
69+
discussion at a critical time.
70+
71+
These examples underscore how even small numerical changes can shift
72+
narratives, delay responses, and affect credibility.
73+
74+
**reviser** is an R package designed to streamline the analysis and
75+
visualization of data revisions—especially in the context of official
76+
statistics and macroeconomic indicators. Built with tidy principles and
77+
seamless integration in mind, reviser offers intuitive tools to compare
78+
data vintages, quantify revision patterns, and produce publication-ready
79+
outputs. Whether you’re tracking GDP estimate updates or evaluating
80+
forecast accuracy over time, **reviser** provides a robust and flexible
81+
framework tailored for economists, data analysts, and statistical
82+
agencies alike.
83+
84+
The **reviser** package provides a comprehensive toolkit for analyzing
85+
data revisions — crucial for anyone working with real-time data. It
86+
allows users to **visualize**, **analyze**, and **evaluate** the impact
87+
of data updates across different release vintages, helping to understand
88+
and analyze revision patterns.
4589

4690
Get started:
4791

48-
- Structure your data according to **reviser conventions**. See the [*get started*](https://docs.ropensci.org/reviser/articles/reviser.html) vignette
92+
- Structure your data according to **reviser conventions**. See the
93+
[*get
94+
started*](https://docs.ropensci.org/reviser/articles/reviser.html)
95+
vignette
4996

5097
Key features include:
5198

52-
- **Calculate revisions** across vintages using [`get_revisions()`](https://docs.ropensci.org/reviser/reference/get_revisions.html). See the vignette [*Understanding Data Revisions*](https://docs.ropensci.org/reviser/articles/understanding-revisions.html) to learn how to structure and compute revision tables.
53-
54-
- **Analyze revision patterns** and evaluate revision accuracy and bias using [`get_revision_analysis()`](https://docs.ropensci.org/reviser/reference/get_revision_analysis.html). For more, read the vignette [*Revision Patterns and Statistics*](https://docs.ropensci.org/reviser/articles/revision-analysis.html).
55-
56-
- **Detect the first efficient release**, i.e., the earliest vintage that closely matches the final values, with [`get_first_efficient_release()`](https://docs.ropensci.org/reviser/reference/get_first_efficient_release.html). See the vignette [*Efficient Release Identification*](https://docs.ropensci.org/reviser/articles/efficient-release.html).
57-
58-
- **Nowcast future data revisions** using [`kk_nowcast()`](https://docs.ropensci.org/reviser/reference/kk_nowcast.html) and [`jvn_nowcast()`](https://docs.ropensci.org/reviser/reference/jvn_nowcast.html), tools to anticipate upcoming changes to early releases. Explore the methodology in the vignettes [*Nowcasting revisions using the generalized Kishor-Koenig family*](https://docs.ropensci.org/reviser/articles/nowcasting-revisions-kk.html) and [*Nowcasting revisions using the Jacobs-Van Norden model*](https://docs.ropensci.org/reviser/articles/nowcasting-revisions-jvn.html).
59-
99+
- **Calculate revisions** across vintages using
100+
[`get_revisions()`](https://docs.ropensci.org/reviser/reference/get_revisions.html).
101+
See the vignette [*Understanding Data
102+
Revisions*](https://docs.ropensci.org/reviser/articles/understanding-revisions.html)
103+
to learn how to structure and compute revision tables.
104+
105+
- **Analyze revision patterns** and evaluate revision accuracy and bias
106+
using
107+
[`get_revision_analysis()`](https://docs.ropensci.org/reviser/reference/get_revision_analysis.html).
108+
For more, read the vignette [*Revision Patterns and
109+
Statistics*](https://docs.ropensci.org/reviser/articles/revision-analysis.html).
110+
111+
- **Detect the first efficient release**, i.e., the earliest vintage
112+
that closely matches the final values, with
113+
[`get_first_efficient_release()`](https://docs.ropensci.org/reviser/reference/get_first_efficient_release.html).
114+
See the vignette [*Efficient Release
115+
Identification*](https://docs.ropensci.org/reviser/articles/efficient-release.html).
116+
117+
- **Nowcast future data revisions** using
118+
[`kk_nowcast()`](https://docs.ropensci.org/reviser/reference/kk_nowcast.html)
119+
and
120+
[`jvn_nowcast()`](https://docs.ropensci.org/reviser/reference/jvn_nowcast.html),
121+
tools to anticipate upcoming changes to early releases. Explore the
122+
methodology in the vignettes [*Nowcasting revisions using the
123+
generalized Kishor-Koenig
124+
family*](https://docs.ropensci.org/reviser/articles/nowcasting-revisions-kk.html)
125+
and [*Nowcasting revisions using the Jacobs-Van Norden
126+
model*](https://docs.ropensci.org/reviser/articles/nowcasting-revisions-jvn.html).
60127

61128
## Installation
62129

63130
Install the released version from CRAN with:
64131

65-
66132
``` r
67133
install.packages("reviser")
68134
```
69135

70136
You can also install the rOpenSci build from R-universe with:
71137

72-
73138
``` r
74139
install.packages(
75140
"reviser",
76141
repos = c("https://ropensci.r-universe.dev", "https://cloud.r-project.org")
77142
)
78143
```
79144

80-
You can install the development version from [GitHub](https://github.com/) with:
81-
145+
You can install the development version from
146+
[GitHub](https://github.com/) with:
82147

83148
``` r
84149
remotes::install_github("ropensci/reviser")
85150
```
86151

87-
88152
## Usage
89-
The following example analyzes GDP data revisions for the United States by
90-
transforming the data into a format suitable for vintage analysis, visualizing
91-
revisions during the financial crisis, and assessing how early estimates compare
92-
to the final release. It then identifies the point at which the estimates become
93-
stable and reliable.
153+
154+
The following example analyzes GDP data revisions for the United States
155+
by transforming the data into a format suitable for vintage analysis,
156+
visualizing revisions during the financial crisis, and assessing how
157+
early estimates compare to the final release. It then identifies the
158+
point at which the estimates become stable and reliable.
94159

95160
``` r
96161
library(reviser)
@@ -116,10 +181,7 @@ plot_vintages(
116181
subtitle = "qoq growth rates")
117182
```
118183

119-
<div class="figure">
120-
<img src="man/figures/README-readme-example-1.png" alt="plot of chunk readme-example" width="100%" />
121-
<p class="caption">plot of chunk readme-example</p>
122-
</div>
184+
<img src="man/figures/README-readme-example-1.png" alt="" width="100%" />
123185

124186
``` r
125187

@@ -197,7 +259,7 @@ summary(efficient_release)
197259
#>
198260
#> Residual standard error: 0.2518 on 166 degrees of freedom
199261
#> (10 observations deleted due to missingness)
200-
#> Multiple R-squared: 0.9523, Adjusted R-squared: 0.952
262+
#> Multiple R-squared: 0.9523, Adjusted R-squared: 0.952
201263
#> F-statistic: 3314 on 1 and 166 DF, p-value: < 2.2e-16
202264
#>
203265
#>
@@ -218,12 +280,29 @@ summary(efficient_release)
218280
```
219281

220282
## Comparison to [`rjd3revisions`](https://rjdverse.github.io/rjd3revisions/)
221-
The `reviser` package sets itself apart from `rjd3revisions` not only through its focus on advanced analysis of efficient releases and nowcasting performance, but also in its pure R implementation, which avoids external dependencies. In contrast, `rjd3revisions` relies heavily on Java via the JDemetra+ platform, which can make setup and integration more complex. `reviser` offers a lightweight, R-native solution for revision analysis, combining user-friendly tools for data wrangling, visualization, and evaluation of release efficiency.
283+
284+
The `reviser` package sets itself apart from `rjd3revisions` not only
285+
through its focus on advanced analysis of efficient releases and
286+
nowcasting performance, but also in its pure R implementation, which
287+
avoids external dependencies. In contrast, `rjd3revisions` relies
288+
heavily on Java via the JDemetra+ platform, which can make setup and
289+
integration more complex. `reviser` offers a lightweight, R-native
290+
solution for revision analysis, combining user-friendly tools for data
291+
wrangling, visualization, and evaluation of release efficiency.
222292

223293
## Contributing
224-
Contributions are encouraged and appreciated. If you're uncertain about opening a pull request, consider starting with an issue to discuss your proposal. For more information, please refer to [CONTRIBUTING](https://docs.ropensci.org/reviser/CONTRIBUTING.html).
225294

226-
Please note that the reviser project follows the [rOpenSci Code of Conduct](https://devguide.ropensci.org/collaboration.html#code-of-conduct). By contributing to this project, you agree to abide by its terms.
295+
Contributions are encouraged and appreciated. If you’re uncertain about
296+
opening a pull request, consider starting with an issue to discuss your
297+
proposal. For more information, please refer to
298+
[CONTRIBUTING](https://docs.ropensci.org/reviser/CONTRIBUTING.html).
299+
300+
Please note that the reviser project follows the [rOpenSci Code of
301+
Conduct](https://devguide.ropensci.org/collaboration.html#code-of-conduct).
302+
By contributing to this project, you agree to abide by its terms.
227303

228304
## Citation
229-
Burri M, Wegmueller P (2025). reviser: Tools for Studying Revision Properties in Real-Time Time Series Vintages. R package version 0.1.0.9001, https://docs.ropensci.org/reviser/.
305+
306+
Burri M, Wegmueller P (2025). reviser: Tools for Studying Revision
307+
Properties in Real-Time Time Series Vintages. R package version
308+
0.1.0.9001, <https://docs.ropensci.org/reviser/>.
3.94 KB
Loading

0 commit comments

Comments
 (0)