feat: regression support — Data.y Vec<u8> → Vec<f64>, Spearman/RMSE fitness#76
Merged
feat: regression support — Data.y Vec<u8> → Vec<f64>, Spearman/RMSE fitness#76
Conversation
All class labels (0/1/2) are now stored as f64 (0.0/1.0/2.0). Continuous y values (gene_count, etc.) can now be loaded for regression. Changes across 10 files: - data.rs: field type, loading, feature selection, class operations - individual.rs: evaluation, confusion matrix, threshold optimization - population.rs: fitness computation, removed y_f64 intermediaries - utils.rs: all metric functions, bootstrap, stratification - cv.rs: fold splitting, stratification - voting.rs: confusion matrix, predictions - bayesian_mcmc.rs: posterior computation - csv_report.rs: metric export - lib.rs: remove_class calls 776 lib tests pass. Closes #15
…d feature selection - Regression mode auto-detected from fit function (spearman/rmse/mutual_information) - Feature selection bypasses class-based tests, uses prevalence only - Tested on wetlab_protocol gene_count: SA finds Spearman=0.164 with k=15 Known limitation: display still shows AUC/sensitivity/specificity (all 0.0 for regression). The fit value correctly shows the Spearman correlation. Closes #15
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Data.yfromVec<u8>toVec<f64>across 10 source filesTest
Known limitation
Display still shows AUC/sensitivity/specificity (0.0 for regression) — needs regression-specific display
Closes #15