Skip to content

Feat sklearn pca50 - #114

Merged
tonyliang19 merged 16 commits into
devfrom
feat-sklearn-pca50
Sep 29, 2026
Merged

tonyliang19 merged 16 commits into
devfrom
feat-sklearn-pca50

Conversation

@tonyliang19

Copy link
Copy Markdown
Contributor

No description provided.

Copilot AI balanced review requested due to automatic review settings September 29, 2026 14:20
@tonyliang19
tonyliang19 merged commit 6b06595 into dev Sep 29, 2026
1 check passed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🔵 Needs a closer look

Unresolved feature-selection and container issues affect execution, and the broad workflow changes need final human review.

Review effort: Balanced
Findings: 3 High severity · 1 Medium severity

Open (4)
What changed in this PR

This PR adds per-modality PCA-50 to sklearn training in the multi-omics pipeline. It also changes splitting, container configuration, and the set of available workflows.

Changes:

  • Add sklearn reduction options, classifiers, and feature-selection search changes.
  • Add survival-event splitting and revise classification metrics.
  • Centralize process containers and remove simulation and placeholder methods.
File Description
subworkflows/​splitting/​main.nf Passes outcome type to splitting.
subworkflows/​simulation/​main.nf Removes simulation workflow.
subworkflows/​prepare_data/​main.nf Removes simulation include.
subworkflows/​methods/​sklearn/​main.nf Passes reduction options to training.
subworkflows/​methods/​sgmr/​main.nf Removes SGMR placeholder.
subworkflows/​cross_validation/​r/​main.nf Removes SGMR include.
subworkflows/​cross_validation/​python/​main.nf Removes GOAT integration.
subworkflows/​cross_validation/​main.nf Updates Python-method run condition.
nextflow.config Sets defaults and container labels.
modules/​split_train_test/​resources/​usr/​bin/​split_tr_te.py Adds survival-event splitting.
modules/​split_train_test/​main.nf Forwards outcome type.
modules/​sklearn/​train/​resources/​usr/​bin/​sklearn_train.py Adds modality-wise PCA pipeline.
modules/​sklearn/​train/​resources/​usr/​bin/​load_classifier_class.py Revises classifier choices.
modules/​sklearn/​train/​resources/​usr/​bin/​combine_mdata2df.py Returns modality names.
modules/​sklearn/​train/​main.nf Runs training by model and reduction.
modules/​sklearn/​select_feature/​resources/​usr/​bin/​sklearn_select_features.py Flattens feature-selection targets.
modules/​sklearn/​select_feature/​resources/​usr/​bin/​run_random_search_cv.py Searches parameters in a scaling pipeline.
modules/​sklearn/​select_feature/​resources/​usr/​bin/​load_classifier_class.py Revises selection classifiers.
modules/​sklearn/​select_feature/​main.nf Uses a container label.
modules/​sklearn/​preprocess/​main.nf Uses a container label.
modules/​sklearn/​predict/​main.nf Uses a container label.
modules/​simulation/​simulate_mvn_data/​resources/​usr/​bin/​unique_matrices.R Removes simulation helper.
modules/​simulation/​simulate_mvn_data/​resources/​usr/​bin/​simulate_data.R Removes simulation script.
modules/​simulation/​simulate_mvn_data/​resources/​usr/​bin/​gen_simul_metadata.R Removes metadata generator.
modules/​simulation/​simulate_mvn_data/​resources/​usr/​bin/​debug_simulate_data.R Removes simulation debug script.
modules/​simulation/​simulate_mvn_data/​main.nf Removes MVN simulation process.
modules/​simulation/​simulate_intersim/​resources/​usr/​bin/​simulate_InterSIM.R Removes InterSIM script.
modules/​simulation/​simulate_intersim/​resources/​usr/​bin/​save_mudata.py Removes simulation export helper.
modules/​simulation/​simulate_intersim/​main.nf Removes InterSIM process.
modules/​rgcca/​train/​main.nf Uses an RGCCA container label.
modules/​rgcca/​select_feature/​main.nf Uses an RGCCA container label.
modules/​rgcca/​preprocess/​main.nf Uses an RGCCA container label.
modules/​rgcca/​predict/​main.nf Uses an RGCCA container label.
modules/​prepare_data/​uncompress_record/​main.nf Uses a generic container label.
modules/​prepare_data/​prepare_mu_data/​main.nf Uses a generic container label.
modules/​prepare_data/​prepare_mae_data/​main.nf Uses a generic container label.
modules/​prepare_data/​parse_metadata/​main.nf Uses a generic container label.
modules/​mogonet/​train/​main.nf Uses a MOGONET container label.
modules/​mogonet/​select_feature/​main.nf Uses a MOGONET container label.
modules/​mogonet/​preprocess/​main.nf Uses a MOGONET container label.
modules/​mogonet/​predict/​main.nf Uses a MOGONET container label.
modules/​mofa/​train/​main.nf Uses a MOFA container label.
modules/​mofa/​select_feature/​main.nf Uses a MOFA container label.
modules/​mofa/​preprocess/​main.nf Uses a MOFA container label.
modules/​mofa/​predict/​main.nf Uses a MOFA container label.
modules/​merge_selected_features/​main.nf Uses a CODIA container label.
modules/​merge_result_table/​main.nf Uses a CODIA container label.
modules/​local/​samplesheet_check/​main.nf Uses a MOGONET container label.
modules/​integrao/​train/​main.nf Uses an INTEGRAO container label.
modules/​integrao/​select_feature/​main.nf Uses an INTEGRAO container label.
modules/​integrao/​preprocess/​main.nf Uses an INTEGRAO container label.
modules/​integrao/​predict/​main.nf Uses an INTEGRAO container label.
modules/​goat/​resource/​usr/​bin/​run_goat.py Removes GOAT script.
modules/​goat/​main.nf Removes GOAT process.
modules/​diablo/​train/​main.nf Uses a CODIA container label.
modules/​diablo/​select_feature/​main.nf Uses a CODIA container label.
modules/​diablo/​preprocess/​main.nf Uses a CODIA container label.
modules/​diablo/​predict/​main.nf Uses a CODIA container label.
modules/​diablo/​downstream/​main.nf Uses a CODIA container label.
modules/​cooperative_learning/​train/​main.nf Uses a CODIA container label.
modules/​cooperative_learning/​select_feature/​main.nf Uses a CODIA container label.
modules/​cooperative_learning/​preprocess/​main.nf Uses a CODIA container label.
modules/​cooperative_learning/​predict/​main.nf Uses a CODIA container label.
modules/​caret_multimodal/​train/​main.nf Uses a caret container label.
modules/​caret_multimodal/​select_feature/​main.nf Uses a caret container label.
modules/​caret_multimodal/​preprocess/​main.nf Uses a caret container label.
modules/​caret_multimodal/​predict/​main.nf Uses a caret container label.
modules/​calculate_metrics/​resources/​usr/​bin/​calculate_metrics.py Revises classification metrics.
modules/​calculate_metrics/​main.nf Uses a MOGONET container label.
conf/​real_data.config Corrects the feature-selection parameter name.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread nextflow.config
sklearn_classifier_names = ['Linear_SVM', 'Logit']

//sklearn_classifier_names = ['Linear_SVM', 'Logit', 'Decision_Tree', 'Gradient_Boost', 'Random_Forest', 'MLP', 'Hist_Gradient_Boost']
sklearn_classifier_names = ['Logit', 'MLP', 'Decision_Tree']
Comment thread nextflow.config
withLabel: rgcca { container = 'tonyliang19/rgcca:latest' }
withLabel: codia { container = 'tonyliang19/codia:latest' }
withLabel: integrao { container = 'tonyliang19/integrao:latest' }
withLabel: sklearn { container = 'tonyliang19/mogonet:latest' } // fix: should have a new sklearn container instead, for now use mogonet one
include { COOPERATIVE_LEARNING } from "${subworkflowDir}/methods/cooperative_learning"
include { DIABLO } from "${subworkflowDir}/methods/diablo"
include { MOFA } from "${subworkflowDir}/methods/mofa"
include { RGCCA } from "${subworkflowDir}/methods/rgcca"
split_tr_te.py ${mu_path} \
--split_type=${split_type} \
--num_splits=${num_splits} \
--outcome_type=${outcome_type} \
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants