skbio.stats.ordination.MMvecResult.score#
- MMvecResult.score(X, Y)[source]#
Compute Q-squared (coefficient of prediction) on held-out data.
\(Q^2\) measures predictive performance on test data, analogous to \(R^2\) but for cross-validation. Values range from -inf to 1, where 1 indicates perfect prediction and 0 indicates prediction no better than the mean.
\[Q^2 = 1 - \frac{SS_{res}}{SS_{tot}} = 1 - \frac{\sum(y - \hat{y})^2}{\sum(y - \bar{y}_j)^2}\]where \(\bar{y}_j\) is the per-target mean across samples.
- Parameters:
- Xtable_like of shape (n_samples, n_features_x)
Feature abundance table of the conditioning (X) modality. Columns must match the features used during training.
- Ytable_like of shape (n_samples, n_features_y)
Feature abundance table of the conditioned (Y) modality.
- Returns:
- q2float
Q-squared score. Higher is better, with 1.0 being perfect prediction.