-
Notifications
You must be signed in to change notification settings - Fork 16
/
README.Rmd
126 lines (88 loc) · 6.29 KB
/
README.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
---
output: github_document
---
<!-- README.md is generated from README.Rmd. Please edit that file -->
```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
```
# nflverse-data
<!-- badges: start -->
<!-- badges: end -->
This repository holds automated data releases for nflverse projects (i.e. all of the data powered/scraped via GitHub Actions).
## Usage
You can download data hosted here with the `{nflreadr}` package, or manually download and access the [releases](https://github.com/nflverse/nflverse-data/releases) page. Releases are roughly organized along the [main functions](https://nflreadr.nflverse.com/reference/) of nflreadr.
## Automation Status
The following table reports on the status and last update times of nflverse data pipelines.
```{r echo = FALSE, message = FALSE, warning = FALSE}
# piggyback::pb_list() |>
# dplyr::filter(file_name %in% c("timestamp.json","")) |>
# dplyr::distinct(tag,file_name) |>
# saveRDS("man/data_releases.rds")
update_times <- readRDS("man/data_releases.rds") |>
dplyr::mutate(url = glue::glue("https://github.com/nflverse/nflverse-data/releases/download/{tag}/timestamp.json"),
badge = glue::glue("[![{tag}](https://img.shields.io/badge/dynamic/json?color=blue&label={paste0('load_',tag)}&query=last_updated&style=flat-square&url={URLencode(url)})](https://github.com/nflverse/nflverse-data/releases/tag/{tag})")) |>
dplyr::select(
Data = tag,
`Last Updated` = badge
) |>
dplyr::bind_rows(
list(Data = "pbp_raw", `Last Updated` = "[![raw pbp data](https://img.shields.io/github/last-commit/nflverse/nflfastR-raw?label=Raw%20PBP%20Updated&style=flat-square)]()")
)
status <- tibble::tribble(
~Data, ~ Status,
"pbp_raw", "",
"pbp", "![pbp and ps](https://img.shields.io/github/actions/workflow/status/nflverse/nflverse-pbp/automated_pbp_update.yaml?label=pbp_status&style=flat-square)",
"player_stats", "![pbp and ps](https://img.shields.io/github/actions/workflow/status/nflverse/nflverse-pbp/automated_pbp_update.yaml?label=ps_status&style=flat-square)",
"rosters", "![rosters](https://img.shields.io/github/actions/workflow/status/nflverse/nflverse-rosters/update_rosters.yaml?label=rosters_status&style=flat-square)",
"snap_counts", "![snap_counts](https://img.shields.io/github/actions/workflow/status/nflverse/pfr_scrapR/update_snap_counts.yaml?label=snaps_status&style=flat-square)",
"draft_picks", "![snap_counts](https://img.shields.io/github/actions/workflow/status/nflverse/pfr_scrapR/update_draft_picks.yaml?label=draft_status&style=flat-square)",
"pfr_advstats", "![adv_stats](https://img.shields.io/github/actions/workflow/status/nflverse/pfr_scrapR/update_advanced_stats.yaml?label=advstats_status&style=flat-square)",
"nextgen_stats", "![ngs](https://img.shields.io/github/actions/workflow/status/nflverse/ngs-data/update_ngs.yaml?label=ngs_status&style=flat-square)",
"injuries", "![injuries](https://img.shields.io/github/actions/workflow/status/nflverse/nflverse-rosters/update_injuries.yaml?label=injuries_status&style=flat-square)",
"depth_charts", "![depthcharts](https://img.shields.io/github/actions/workflow/status/nflverse/nflverse-rosters/update_depth_charts.yaml?label=depth_charts_status&style=flat-square)",
"combine", "![combine](https://img.shields.io/github/actions/workflow/status/nflverse/pfr_scrapR/update_combine.yaml?label=combine_status&style=flat-square)",
"nfl4th", "![nfl4th](https://img.shields.io/github/actions/workflow/status/nflverse/nfl4th/update_precompute.yaml?label=nfl4th_precompute&style=flat-square)",
"ffverse player IDs", "![weekly-playerids](https://img.shields.io/github/actions/workflow/status/dynastyprocess/data/weekly-playerids.yml?label=ff_playerids&style=flat-square)",
"ffverse rankings", "![weekly-fantasypros](https://img.shields.io/github/actions/workflow/status/dynastyprocess/data/weekly-fantasypros.yml?label=rankings&style=flat-square)",
"contracts", "![contracts](https://img.shields.io/github/actions/workflow/status/nflverse/rotc/update_otc.yaml?label=contracts&style=flat-square)"
) |>
dplyr::left_join(update_times, by = "Data") |>
dplyr::mutate_all(tidyr::replace_na,"") |>
dplyr::mutate(Status = glue::glue("[{Status}]()"))
```
```{r echo = FALSE, message = FALSE, warning = FALSE}
knitr::kable(status)
```
```{asis include = FALSE}
### Play by Play
![raw](https://img.shields.io/github/last-commit/nflverse/nflfastR-raw?label=Raw%20PBP%20Updated&style=flat-square)
Raw JSON should appear 1-2 hours after each game.
![pbp and ps](https://img.shields.io/github/actions/workflow/status/nflverse/nflverse-pbp/update_current_season_pbp_and_stats?label=PBP%20%26%20Player%20Stats&style=flat-square)
PBP and PS are updated at 9:00 UTC each day from September to February
### Rosters
![rosters](https://img.shields.io/github/actions/workflow/status/nflverse/nflverse-rosters/update_rosters?label=Rosters&style=flat-square)
Rosters are updated at 7:00 UTC each day.
### Snap Counts
![snap_counts](https://img.shields.io/github/actions/workflow/status/nflverse/pfr_scrapR/update_snap_counts?label=Snap%20Counts&style=flat-square)
Snap counts are polled four times a day for new data.
### Advanced Pass/Rush/Rec/Def Stats
![adv_stats](https://img.shields.io/github/actions/workflow/status/nflverse/pfr_scrapR/update_adv_stats?label=PFR%20Adv%20Stats&style=flat-square)
Advanced Stats are polled four times a day for new data.
### Next Gen Stats
![ngs](https://img.shields.io/github/actions/workflow/status/nflverse/ngs-data/update_ngs?label=NGS%20data&style=flat-square)
NGS is polled every day at 7:00 UTC from September to February.
### nfl4th
![nfl4th](https://img.shields.io/github/actions/workflow/status/nflverse/nfl4th/update-computed-numbers?label=nfl4th_precompute&style=flat-square)
nfl4th's precomputed numbers are rebuilt each day at 7:00 UTC from September to February.
### ffverse player IDs
![weekly-playerids](https://img.shields.io/github/actions/workflow/status/dynastyprocess/data/weekly-playerids?label=ff_playerids&style=flat-square)
This is updated on a weekly basis.
### ffverse rankings
![weekly-fantasypros](https://img.shields.io/github/actions/workflow/status/dynastyprocess/data/weekly-fantasypros?label=rankings&style=flat-square)
This is updated on Thursdays at 7:00 pm ET.
```