← Back to home
Comparison · Analytics

datefixR vs sdtm.oak

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

Shared themes:r-package

datefixR vs sdtm.oak: at a glance

FeaturedatefixRsdtm.oak
SectorAnalyticsAnalytics
Velocity score0.00.0
Sparks · 30d00
Top themesdate-parsing, rust, data-cleaning, localizationclinical-trials, sdtm, pharmaverse, r-package
Last editorial update1h ago2h ago
WebsiteVisit →Visit →

What is datefixR?

The messy-date parser rewrote its core in Rust and came out 300x faster.

datefixR standardizes inconsistently formatted dates — the kind that arrive from spreadsheets and hand-entered clinical or survey data, with mixed separators, ambiguous orders, missing components, and month names in whatever language the source used. Version 2.0.0 rewrote the parsing core in Rust, reporting over 300x throughput against previous versions through fastpath handling of common formats and parallel column processing via a cores argument. Version 2.0.1 then spent itself cleaning up after that rewrite, restoring ordinal indicator support, stopping malformed dates from being silently cast to NA, and reinstating error messages that had gone missing.

Read the full datefixR trajectory →

What is sdtm.oak?

Two releases in, the open-source SDTM toolkit now covers the domains it originally excluded.

sdtm.oak builds SDTM datasets — the tabulation standard clinical trial submissions are filed in — from raw collected data. The 0.1.0 release shipped the mapping algorithm functions and derived-variable helpers but explicitly excluded DM, trial design domains, and several others. Version 0.2.0 closes the largest of those gaps, adding DM domain support via calc_min_max_date() and oak_calc_ref_dates(), plus generate_sdtm_supp() for supplemental qualifier domains.

Read the full sdtm.oak trajectory →

datefixR vs sdtm.oak: editorial side-by-side

D
datefixR
ANALYTICS
0.0

The messy-date parser rewrote its core in Rust and came out 300x faster.

◆ Current state

datefixR standardizes inconsistently formatted dates — the kind that arrive from spreadsheets and hand-entered clinical or survey data, with mixed separators, ambiguous orders, missing components, and month names in whatever language the source used. Version 2.0.0 rewrote the parsing core in Rust, reporting over 300x throughput against previous versions through fastpath handling of common formats and parallel column processing via a cores argument. Version 2.0.1 then spent itself cleaning up after that rewrite, restoring ordinal indicator support, stopping malformed dates from being silently cast to NA, and reinstating error messages that had gone missing.

◆ Where it's heading

Two long arcs meet here. The first is localization: Russian, Indonesian, German, Spanish month abbreviations, and experimental Roman numeral months accumulated release by release, with full translation of user-facing messages treated as a goal rather than a bonus. The second is the migration off R for the parsing hot path — internals began moving to C++ around 1.3.1 before the Rust rewrite replaced that work entirely. The 2.0.1 regressions show the cost of that move, since behavior that was implicit in the R implementation had to be re-specified.

◆ Prediction

The Rust core is one release into stabilization and 2.0.1 was entirely regression repair, so expect further correctness fixes against pre-2.0.0 behavior before any new format support lands.

S
sdtm.oak
ANALYTICS
0.0

Two releases in, the open-source SDTM toolkit now covers the domains it originally excluded.

◆ Current state

sdtm.oak builds SDTM datasets — the tabulation standard clinical trial submissions are filed in — from raw collected data. The 0.1.0 release shipped the mapping algorithm functions and derived-variable helpers but explicitly excluded DM, trial design domains, and several others. Version 0.2.0 closes the largest of those gaps, adding DM domain support via calc_min_max_date() and oak_calc_ref_dates(), plus generate_sdtm_supp() for supplemental qualifier domains.

◆ Where it's heading

This is the pharmaverse pattern of building submission tooling in the open, one domain class at a time, with the release history running through GitHub release-candidate tags before each CRAN submission. The direction is clear from the domain checklist: start with the mechanically simple Findings and Events domains, then work toward the ones with cross-dataset dependencies. DM and SUPP were the two that most often forced teams back to bespoke code.

◆ Prediction

The remaining exclusions from the 0.1.0 scope — trial design domains, SV, SE, RELREC and the EPOCH variable — are the obvious next targets, with EPOCH likely first since it depends on the reference dates 0.2.0 just added. Expect the same rhythm of release candidates ahead of each CRAN submission.

Alternatives to datefixR and sdtm.oak

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 datefixR or sdtm.oak.

See all datefixR alternatives → · See all sdtm.oak alternatives →

Recent activity from datefixR and sdtm.oak

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

  1. 3mo agodatefixRRust rewrite regressions repaired, silent NA casting stopped
  2. 11mo agodatefixRParsing core rewritten in Rust for a 300x speedup
  3. 1y agosdtm.oaksdtm.oak v0.2.0 CRAN release
  4. 1y agosdtm.oaksdtm.oak v0.1.1 CRAN release
  5. 1y agodatefixRIndonesian month names and translations added
  6. 1y agosdtm.oaksdtm.oak v0.1.0 CRAN release
  7. 1y agosdtm.oakv0.1.0rc4: [skip vbump] 90 cran comments (#91)
  8. 2y agosdtm.oakv0.1.0rc2: Fix CRAN Comments (#84)
  9. 2y agosdtm.oakv0.1.0: [skip vbump] Bump version for cran release (#77)
  10. 2y agodatefixR'ene' and 'ener' recognized as January
  11. 3y agodatefixRRussian localization, Roman numeral months, Windows freeze fix
  12. 3y agodatefixRExcel leap-year offset and single-digit day fixes

Frequently asked questions

What is the difference between datefixR and sdtm.oak?

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

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

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

What are the best alternatives to sdtm.oak?

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