mice
mice can finally predict, not just estimate, from multiply imputed data.
A side-by-side editorial comparison of selection.index and valr — release velocity, themes, recent moves, and the top alternatives to consider.
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.
valr's interval verbs now read genomic files in place instead of demanding a loaded tibble.
valr reimplements bedtools-style genome interval arithmetic as tidyverse verbs backed by C++. Its long project has been closing the behavioural gap with bedtools — the book-ended interval semantics finally match in 0.10.0, three releases after the deprecation began. The July release also ends the assumption that intervals must be in memory: bed_map(), bed_intersect(), bed_subtract(), bed_coverage() and bed_window() accept a bigWig or bigBed path or URL where an interval table used to go.
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.
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.
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.
valr reimplements bedtools-style genome interval arithmetic as tidyverse verbs backed by C++. Its long project has been closing the behavioural gap with bedtools — the book-ended interval semantics finally match in 0.10.0, three releases after the deprecation began. The July release also ends the assumption that intervals must be in memory: bed_map(), bed_intersect(), bed_subtract(), bed_coverage() and bed_window() accept a bigWig or bigBed path or URL where an interval table used to go.
Two arcs converge here. One is compatibility: min_overlap arrived with a deprecation warning in 0.9.0 and its default flipped from 0 to 1 in 0.10.0, so book-ended intervals are excluded by default as bedtools does, with the internal calculations in bed_closest() and friends deliberately left counting them. The other is the file-backed path, which grew out of the cpp11bigwig dependency adopted in 0.8.3 for read_bigwig() and re-exported in 0.9.0 — reading a file became querying one. Underneath, the C++ base keeps getting lighter: Rcpp swapped for cpp11, rlang cut to a single function, per-group memory copies removed from three verbs.
Only five verbs take a file argument today and bed_closest(), bed_glyph() and the statistical verbs do not, so extending the file-backed path across the rest of the API is the obvious follow-up. The deprecated tibble re-exports and the now-defunct n_fields argument suggest continued removal of the compatibility layer in the next minor release.
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 selection.index or valr.
mice can finally predict, not just estimate, from multiply imputed data.
A market-microstructure toolkit that keeps adding estimators as the papers land.
A vowel-analysis package trimming dependencies after an email address got it archived.
The R half of the EMU speech database system, fixing what was quietly broken.
A Bayesian model-averaging package spending its 2.0 on memory, not methods.
tidyplots keeps rebuilding its own foundations rather than layering around them.
See all selection.index alternatives → · See all valr alternatives →
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
They serve adjacent needs but don't currently overlap on shipped themes. selection.index and valr 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.
Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. selection.index and valr 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.
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.
Top valr alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "valr alternatives" section above for the current picks, or visit /alternatives/valr for the full list with editorial commentary on each.