← Back to home
Comparison · Infra & APIs

mmpca vs tf

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

mmpca vs tf: at a glance

Featuremmpcatf
SectorInfra & APIsInfra & APIs
Velocity score0.00.0
Sparks · 30d00
Top themescran, maintainership, rcpp, build-systemfunctional-data-analysis, vctrs, multivariate, r-packages
Last editorial update57m ago3h ago
WebsiteVisit →Visit →

What is mmpca?

Back from CRAN removal under a new maintainer, with the compiled layer rebuilt.

mmpca implements multiple matrix principal component analysis with a compiled GSL backend. The package spent time off CRAN, and its recent history is a rescue operation rather than a feature program: a new maintainer took it over, moved the native build path onto RcppGSL, and folded the hand-written C bindings into Rcpp. The two most recent entries landed the same day, one restoring the package and one clearing residual CRAN comments.

Read the full mmpca trajectory →

What is tf?

tf gave functional data a second dimension: curves whose values are vectors.

tf supplies the vector classes underneath the tidyfun stack — tfd for raw functional observations, tfb for basis-represented ones, both built on vctrs so curves sit in a data frame column and behave like any other vector. Until July that codomain was scalar. The 0.5.0 release adds tfd_mv and tfb_mv, classes for functions whose values are vectors in R^d, and rebuilds the analysis verbs to match.

Read the full tf trajectory →

mmpca vs tf: editorial side-by-side

M
mmpca
INFRA · APIS
0.0

Back from CRAN removal under a new maintainer, with the compiled layer rebuilt.

◆ Current state

mmpca implements multiple matrix principal component analysis with a compiled GSL backend. The package spent time off CRAN, and its recent history is a rescue operation rather than a feature program: a new maintainer took it over, moved the native build path onto RcppGSL, and folded the hand-written C bindings into Rcpp. The two most recent entries landed the same day, one restoring the package and one clearing residual CRAN comments.

◆ Where it's heading

Work is concentrated on making the package installable and check-clean rather than on the decomposition itself. The version stamps run out of order, with 2.0.3 predating both 2.0.2 and 2.0.4 by three years, so the feed reads as an archive flush around the CRAN return. Nothing in the entries points at method-level work.

◆ Prediction

Expect maintenance releases that keep the compiled code passing CRAN checks; the entries give no signal about new decomposition features.

T
tf
INFRA · APIS
0.0

tf gave functional data a second dimension: curves whose values are vectors.

◆ Current state

tf supplies the vector classes underneath the tidyfun stack — tfd for raw functional observations, tfb for basis-represented ones, both built on vctrs so curves sit in a data frame column and behave like any other vector. Until July that codomain was scalar. The 0.5.0 release adds tfd_mv and tfb_mv, classes for functions whose values are vectors in R^d, and rebuilds the analysis verbs to match.

◆ Where it's heading

The package is widening what a functional observation can be, then porting the toolkit onto it. Registration arrived first in 0.4.0 for univariate curves and immediately gained an srvf_mv method for aligning components jointly, and tfb_mfpc() ports principal component analysis to the multivariate case with a single set of scores shared across components. Alongside that runs steady dependency shedding — mvtnorm and pracma both replaced by inlined samplers that reproduce prior draws bit-for-bit, glue dropped for cli in the previous release — and an unusually long tail of NA-handling and edge-case fixes, several caught in pre-release review of the new classes.

◆ Prediction

The new classes ship with FPCA, registration and shape alignment but the release notes describe tidyfun::tf_unnest() as the consumer of one new export, so the visible next step is the rest of the tidyfun stack catching up to vector-valued columns. Expect follow-up patches on the vctrs casting paths, which is where most of this release's late fixes clustered.

Alternatives to mmpca and tf

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 mmpca or tf.

See all mmpca alternatives → · See all tf alternatives →

Recent activity from mmpca and tf

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

  1. 1mo agotfVector-valued functional data becomes a first-class type
  2. 5mo agotfCurve registration, five depth measures and sub-domain splitting
  3. 8mo agommpcaMinor CRAN comments cleared to keep the package listed
  4. 8mo agommpcaBack on CRAN under a new maintainer, rebuilt on RcppGSL
  5. 2y agotfFix: tf_crosscov normalization
  6. 3y agommpcaValgrind memory fixes and a maximum-iteration option

Frequently asked questions

What is the difference between mmpca and tf?

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

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

What are the best alternatives to mmpca?

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

What are the best alternatives to tf?

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