← Back to home
Comparison · Analytics

broadcast vs socialmixr

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

broadcast vs socialmixr: at a glance

Featurebroadcastsocialmixr
SectorAnalyticsAnalytics
Velocity score0.00.0
Sparks · 30d00
Top themesarray-broadcasting, rcpp, type-consistency, linear-algebracontact matrices, epidemiology, pipeline api, breaking changes
Last editorial update1h ago4h ago
WebsiteVisit →Visit →

What is broadcast?

broadcast is filling in NumPy-style array broadcasting for R, operator by operator.

broadcast brings dimension-broadcasting semantics to R arrays and lists — elementwise operations between arrays of mismatched shape, plus casting methods between hierarchical lists and dimensional structures. It reached CRAN in September 2025 and has released roughly monthly since, accumulating operators (nor, nand, longest common substring), casting methods (cast_shallow2atomic, cast_hier2dim, hiernames2dimnames), and helpers (vector2array, undim, mbroadcasters).

Read the full broadcast trajectory →

What is socialmixr?

socialmixr breaks its one-shot contact_matrix() call into a composable pipeline.

socialmixr builds age-structured social contact matrices from survey data for infectious-disease modelling. Version 0.6.0 replaces the monolithic contact_matrix() entry point with a chain of composable steps — filter, assign age groups, weigh, compute, then symmetrise, split or convert per capita — behind a new contact_matrix S3 class. Survey downloading is being handed off to a separate contactsurveys package.

Read the full socialmixr trajectory →

broadcast vs socialmixr: editorial side-by-side

B
broadcast
ANALYTICS
0.0

broadcast is filling in NumPy-style array broadcasting for R, operator by operator.

◆ Current state

broadcast brings dimension-broadcasting semantics to R arrays and lists — elementwise operations between arrays of mismatched shape, plus casting methods between hierarchical lists and dimensional structures. It reached CRAN in September 2025 and has released roughly monthly since, accumulating operators (nor, nand, longest common substring), casting methods (cast_shallow2atomic, cast_hier2dim, hiernames2dimnames), and helpers (vector2array, undim, mbroadcasters).

◆ Where it's heading

The package is in its post-launch consolidation year, and the release notes read accordingly: roughly half of each entry is a consistency correction rather than an addition. Zero-length results now carry the right type, comparison operators accept integer and logical inputs, the comment attribute survives operations, and the nand operator was found to be wrongly defined against C++ short-circuit evaluation. That ratio is what a young package looks like while its edge cases are being found.

◆ Prediction

Expect more operators and casting methods on the same cadence, with continued type-consistency corrections as users exercise unusual input combinations. Nothing in the entries points at an architectural change.

S
socialmixr
ANALYTICS
0.0

socialmixr breaks its one-shot contact_matrix() call into a composable pipeline.

◆ Current state

socialmixr builds age-structured social contact matrices from survey data for infectious-disease modelling. Version 0.6.0 replaces the monolithic contact_matrix() entry point with a chain of composable steps — filter, assign age groups, weigh, compute, then symmetrise, split or convert per capita — behind a new contact_matrix S3 class. Survey downloading is being handed off to a separate contactsurveys package.

◆ Where it's heading

The arc from 0.4.0 to 0.6.0 is decomposition: first extracting helpers like assign_age_groups(), then moving downloads out of the package, and now exposing every stage of matrix construction as its own verb. Breaking changes are accepted at each step — preserved empty age groups, arrays instead of xtabs, [N,Inf) labels — with the new class inheriting from list so existing $matrix access keeps working. The label change is explicitly aligned with the contactmatrix package.

◆ Prediction

Expect the deprecated dotted argument names and the remaining in-package download paths to be removed once the contactsurveys handoff completes, leaving contact_matrix() as a thin wrapper over the pipeline.

Alternatives to broadcast and socialmixr

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 broadcast or socialmixr.

See all broadcast alternatives → · See all socialmixr alternatives →

Recent activity from broadcast and socialmixr

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

  1. 2mo agobroadcastnor and longest-common-substring operators added; nand corrected
  2. 3mo agosocialmixrContact matrices become a composable pipeline
  3. 5mo agobroadcastcheckNULL, checkNA and ecumprob added
  4. 6mo agosocialmixrPatch: load_survey() handles files without cont_id
  5. 6mo agosocialmixrAge-group assignment and population lookup split out
  6. 8mo agobroadcastZero-length results and attribute preservation made consistent
  7. 9mo agobroadcastacast dimnames bug fixed; casting and helper surface widens
  8. 10mo agobroadcastrecurse_classed replaced by recurse_all in casting methods
  9. 11mo agobroadcastTitle case fixed for CRAN submission
  10. 1y agosocialmixrFaster survey loading and cached Zenodo lookups
  11. 2y agosocialmixrcontact_matrix() now takes survey objects only
  12. 2y agosocialmixrTest fixes for machine-precision failures

Frequently asked questions

What is the difference between broadcast and socialmixr?

They serve adjacent needs but don't currently overlap on shipped themes. broadcast and socialmixr 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 broadcast better than socialmixr?

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

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

What are the best alternatives to socialmixr?

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