← Back to home
Comparison · Infra & APIs

ggfootball vs selection.index

A side-by-side editorial comparison of ggfootball and selection.index — release velocity, themes, recent moves, and the top alternatives to consider.

Shared themes:breaking-changes

ggfootball vs selection.index: at a glance

Featureggfootballselection.index
SectorInfra & APIsInfra & APIs
Velocity score0.00.0
Sparks · 30d00
Top themessports-analytics, r-package, data-scraping, expected-goalsplant-breeding, selection-index, genomic-selection, rcpp
Last editorial update44m ago1h ago
WebsiteVisit →Visit →

What is ggfootball?

A football-viz package just swapped scraping for an API and broke its own output to do it.

ggfootball is a small R package for plotting expected-goals and shot data, sourced from Understat. Four releases are visible. The 0.2.x line was argument tidying and dependency pruning; 0.3.0 replaced the data-acquisition layer wholesale, moving get_match_shots() from HTML parsing onto Understat's AJAX endpoints and changing the returned column names in the process.

Read the full ggfootball trajectory →

What is selection.index?

A dormant plant-breeding package returns as a genomic selection index suite

selection.index computes selection indices for plant breeding — weighting several traits into one number breeders can rank on. After two years of silence it shipped 2.0.0 in March 2026, and the package is barely recognisable: snake_case throughout, an Rcpp and RcppEigen computational core, and index families for genomic data, marker data, multi-stage trials and constrained genetic gain sitting beside the original phenotypic ones.

Read the full selection.index trajectory →

ggfootball vs selection.index: editorial side-by-side

G
ggfootball
INFRA · APIS
0.0

A football-viz package just swapped scraping for an API and broke its own output to do it.

◆ Current state

ggfootball is a small R package for plotting expected-goals and shot data, sourced from Understat. Four releases are visible. The 0.2.x line was argument tidying and dependency pruning; 0.3.0 replaced the data-acquisition layer wholesale, moving get_match_shots() from HTML parsing onto Understat's AJAX endpoints and changing the returned column names in the process.

◆ Where it's heading

The direction is away from scraped HTML and toward a thinner, more defensible package: four dependencies dropped in 0.3.0 on top of qdapRegex in 0.2.1, input validation added, error messages rewritten. Both breaking changes so far were accepted rather than deferred, which reads as a maintainer treating pre-1.0 as the window to get the shape right. The package is willing to break callers for structural reasons, not cosmetic ones.

◆ Prediction

With the scraper rebuilt and the dependency surface trimmed, the next releases are likely to stabilise the new column names and extend the plotting side, which has seen nothing since 0.2.0. A 1.0 would be the signal that the data structure is now considered fixed.

S
selection.index
INFRA · APIS
0.0

A dormant plant-breeding package returns as a genomic selection index suite

◆ Current state

selection.index computes selection indices for plant breeding — weighting several traits into one number breeders can rank on. After two years of silence it shipped 2.0.0 in March 2026, and the package is barely recognisable: snake_case throughout, an Rcpp and RcppEigen computational core, and index families for genomic data, marker data, multi-stage trials and constrained genetic gain sitting beside the original phenotypic ones.

◆ Where it's heading

The first version series added one function at a time — combinatorial indices, then genetic advance, then mean performance under randomised block designs — against a fixed phenotypic framing. Version 2.0.0 abandons that framing rather than extending it. Genomic and marker information become inputs the package understands, multi-cycle simulation becomes a built-in toolset, and the old combinatorial entry points are replaced by a named lpsi(). The 2.0.1 follow-up is entirely CI and numerical-stability work, which reads like a maintainer bracing a much larger surface.

◆ Prediction

A seventeen-runner CI matrix mirroring every CRAN check flavour, added days after 2.0.0, says the immediate concern is keeping a compiled multi-family package green rather than adding to it. Expect stabilisation releases before anything new.

Alternatives to ggfootball and selection.index

Other Infra & APIs products tracked by Sparkpulse, ranked by recent ship velocity. Each card links to a full editorial trajectory and lets you pivot into a head-to-head comparison with either ggfootball or selection.index.

See all ggfootball alternatives → · See all selection.index alternatives →

Recent activity from ggfootball and selection.index

Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.

  1. 5mo agoselection.indexCI expanded to 17 runners after the 2.0.0 rewrite
  2. 5mo agoselection.indexGenomic, marker and multi-stage selection indices on an Rcpp core
  3. 6mo agoselection.indexUnspecified general performance improvements
  4. 6mo agoggfootballggfootball 0.3.0
  5. 6mo agoggfootballggfootball 0.2.2
  6. 1y agoggfootballggfootball 0.2.1
  7. 1y agoggfootballggfootball 0.2.0
  8. 2y agoselection.indexMean performance for randomised block designs
  9. 3y agoselection.indexsel.index() and sel.score.rank() removed for comb.indices()
  10. 4y agoselection.indexGenetic advance calculation added

Frequently asked questions

What is the difference between ggfootball and selection.index?

Both compete on the same themes — breaking-changes — within Infra & APIs. ggfootball and selection.index are shipping at a similar cadence (velocity 0.0 vs 0.0, both within Sparkpulse's "active" band). See the at-a-glance table above for a side-by-side breakdown of velocity, recent sparks, and editorial themes.

Is ggfootball better than selection.index?

Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. ggfootball and selection.index are shipping at a similar cadence (velocity 0.0 vs 0.0, both within Sparkpulse's "active" band). For your specific use case, the alternatives sections above list other Infra & APIs products to evaluate alongside.

What are the best alternatives to ggfootball?

Top ggfootball alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "ggfootball alternatives" section above for the current picks, or visit /alternatives/ggfootball for the full list with editorial commentary on each.

What are the best alternatives to selection.index?

Top selection.index alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "selection.index alternatives" section above for the current picks, or visit /alternatives/selection-index for the full list with editorial commentary on each.