← Back to home
Comparison · Analytics

incase vs sdsfun

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

Shared themes:r-package

incase vs sdsfun: at a glance

Featureincasesdsfun
SectorAnalyticsAnalytics
Velocity score0.00.0
Sparks · 30d00
Top themesdata-wrangling, recoding, tidyverse, api-deprecationspatial-statistics, geodetector, spatial-clustering, rcpp
Last editorial update47m ago1h ago
WebsiteVisit →Visit →

What is incase?

A safer case_when that keeps hardening its guarantees while realigning to tidyverse naming.

incase supplies in_case(), switch_case(), grep_case() and fn_case() as vectorised recoding functions in the dplyr::case_when idiom, with _fct and _list variants that return factors or lists instead of forcing atomic type conversion. The 0.4.0 release deprecates the undotted preserve, default and ordered arguments in favour of dotted forms, starting a removal clock, and adds .exhaustive to error on unmatched inputs.

Read the full incase trajectory →

What is sdsfun?

A spatial-statistics utility package exists to be depended on, and is built accordingly.

sdsfun collects spatial data science utilities — neighbour lists, spatial constrained clustering, discretization, dummy variable generation, geographical detector statistics and projection helpers — with the computationally heavy parts implemented in Rcpp. It was assembled quickly across late 2024, adding a function set roughly every three weeks, and has slowed since to a couple of releases a year. The most recent work is corrective: no longer initializing the RNG state at load, fixing matrix inputs misread as vectors, and clearing an Armadillo deprecation.

Read the full sdsfun trajectory →

incase vs sdsfun: editorial side-by-side

I
incase
ANALYTICS
0.0

A safer case_when that keeps hardening its guarantees while realigning to tidyverse naming.

◆ Current state

incase supplies in_case(), switch_case(), grep_case() and fn_case() as vectorised recoding functions in the dplyr::case_when idiom, with _fct and _list variants that return factors or lists instead of forcing atomic type conversion. The 0.4.0 release deprecates the undotted preserve, default and ordered arguments in favour of dotted forms, starting a removal clock, and adds .exhaustive to error on unmatched inputs.

◆ Where it's heading

The arc is consistently toward catching recoding mistakes at the call site rather than letting them pass silently. Early releases broadened how a match can be expressed — pattern matching, function application, factor and list returns. Recent work has shifted to guarantees about the result: correct factor level ordering relative to .default, and now an exhaustiveness check. Notably 0.4.0 reverses the 0.3.2 decision to accept arguments with or without dots, trading that flexibility for namespace safety against user-supplied case names.

◆ Prediction

The deprecation warnings introduced in 0.4.0 point to a follow-up release that removes the undotted arguments outright. Whether .exhaustive eventually becomes the default is unclear from these entries.

S
sdsfun
ANALYTICS
0.0

A spatial-statistics utility package exists to be depended on, and is built accordingly.

◆ Current state

sdsfun collects spatial data science utilities — neighbour lists, spatial constrained clustering, discretization, dummy variable generation, geographical detector statistics and projection helpers — with the computationally heavy parts implemented in Rcpp. It was assembled quickly across late 2024, adding a function set roughly every three weeks, and has slowed since to a couple of releases a year. The most recent work is corrective: no longer initializing the RNG state at load, fixing matrix inputs misread as vectors, and clearing an Armadillo deprecation.

◆ Where it's heading

This is infrastructure for a family of packages rather than an end-user tool, and the changelog says so directly — functions were added to support gdverse and sesp, and moran_test was migrated in from geocomplexity. That migration pattern is the defining move: capability consolidates here so the downstream packages can share it instead of each carrying its own copy. Growth has slowed as that consolidation completed, leaving correctness and dependency upkeep.

◆ Prediction

Given the package moves when its dependents need something, the next release most likely brings in another shared function or responds to a downstream requirement rather than following its own plan. Armadillo and CRAN check changes remain the reliable source of maintenance work.

Alternatives to incase and sdsfun

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 incase or sdsfun.

See all incase alternatives → · See all sdsfun alternatives →

Recent activity from incase and sdsfun

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

  1. 10mo agosdsfunPackage load stops touching the RNG state
  2. 11mo agoincaseDotted arguments and an .exhaustive matching check
  3. 1y agosdsfunUnified partial correlation testing and head/tails discretization
  4. 1y agosdsfunMissing-value handling added to linear trend removal
  5. 1y agosdsfunCovariate-based detrending and long-to-matrix spatial reshaping
  6. 1y agosdsfunSpatially constrained hierarchical clustering and SPADE estimation
  7. 1y agosdsfunFast geodetector q-value estimator added
  8. 2y agoincaseDotted and undotted arguments both accepted
  9. 5y agoincaseFix NULL return when no condition matches
  10. 5y agoincaseFactor and list return families arrive
  11. 5y agoincaseDrop unused stats import to clear a check NOTE
  12. 5y agoincasePattern and function-based matching families added

Frequently asked questions

What is the difference between incase and sdsfun?

Both compete on the same themes — r-package — within Analytics. incase and sdsfun 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 incase better than sdsfun?

Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. incase and sdsfun 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.

What are the best alternatives to incase?

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

What are the best alternatives to sdsfun?

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