fillpattern
Pattern fills for ggplot2, hardened against the ways users write sizes
A side-by-side editorial comparison of fect and rfm — release velocity, themes, recent moves, and the top alternatives to consider.
A counterfactual estimator turning itself into a platform for multiple estimands
fect implements counterfactual estimators for panel data with treatment effects — imputation-based fixed effects, interactive fixed effects, matrix completion. The 2026 releases move fast and bundle heavily: 2.1.0 rewrote complex fixed effect handling, 2.2.0 unified cross-validation under a single cv.method parameter and replaced method='gsynth' with an explicit time.component.from switch, 2.4.1 introduced a post-hoc estimand API, and 2.4.5 added group.fe for coarsened fixed effects plus a $sample slot exposing which cells entered estimation.
A customer segmentation package that went quiet for six years and returned with dependency hygiene
rfm computes recency, frequency and monetary segmentation for customer analytics in R. The feature surface was set early: 0.1.0 shipped a Shiny app and customer-level input, 0.2.0 added default segments and median statistics, 0.2.1 added user-specified score thresholds and returnable plot objects. Then nothing for nearly six years. Version 0.4.0 in April 2026 fixes a missing-column error and a customer id fault, and moves plotly and gganimate from Suggests to Imports.
fect implements counterfactual estimators for panel data with treatment effects — imputation-based fixed effects, interactive fixed effects, matrix completion. The 2026 releases move fast and bundle heavily: 2.1.0 rewrote complex fixed effect handling, 2.2.0 unified cross-validation under a single cv.method parameter and replaced method='gsynth' with an explicit time.component.from switch, 2.4.1 introduced a post-hoc estimand API, and 2.4.5 added group.fe for coarsened fixed effects plus a $sample slot exposing which cells entered estimation.
The direction is separation of estimation from interpretation. Where the package once returned one effect from one fit, estimand() now dispatches typed estimands — ATT, cumulative ATT, APTT, log ATT — from any imputation fit, with effect() and att.cumu() soft-deprecated but byte-identical pending 3.0.0. Alongside that runs a transparency thread: the $sample matrix, out-of-sample comparison via fect_mspe(), and named component sources instead of opaque method aliases. The release notes are unusually precise about which results change and which do not.
The soft-deprecation notice names 3.0.0 as the removal point for effect() and att.cumu(), so a major release consolidating on the estimand() dispatcher is the clearly signposted next step.
rfm computes recency, frequency and monetary segmentation for customer analytics in R. The feature surface was set early: 0.1.0 shipped a Shiny app and customer-level input, 0.2.0 added default segments and median statistics, 0.2.1 added user-specified score thresholds and returnable plot objects. Then nothing for nearly six years. Version 0.4.0 in April 2026 fixes a missing-column error and a customer id fault, and moves plotly and gganimate from Suggests to Imports.
The 0.4.0 release says more about maintenance posture than about product direction — the version jump past 0.3.x with only two bug fixes and a dependency reshuffle suggests a package being brought back to a releasable state rather than resuming development. Promoting plotly and gganimate to Imports makes the visualization stack mandatory, which is a heavier install in exchange for a simpler code path. The core RFM computation itself has not changed in this window.
The entries show a package returning from dormancy rather than pursuing a roadmap, so further small fixes are more likely than new segmentation capability.
Other Analytics 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 fect or rfm.
Pattern fills for ggplot2, hardened against the ways users write sizes
gcube's recent releases are all packaging metadata, not simulation code
The R port of Quinlan's Cubist gets reproducibility fixes, not new modelling
ggstats keeps widening what a coefficient or Likert plot can be
ecodive rebuilt itself into a broad diversity-metric library, breaking as it went
State-space data simulation for R, filled in one function at a time
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
Both compete on the same themes — r-package — within Analytics. fect and rfm 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. fect and rfm 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 Analytics products to evaluate alongside.
Top fect alternatives in Analytics are ranked by recent ship velocity. Browse the "fect alternatives" section above for the current picks, or visit /alternatives/fect for the full list with editorial commentary on each.
Top rfm alternatives in Analytics are ranked by recent ship velocity. Browse the "rfm alternatives" section above for the current picks, or visit /alternatives/rfm for the full list with editorial commentary on each.