Compute selection for known hotspots analysis - #474
Conversation
- pending to apply multiple testing correction
|
This branch has now been tested and it works well. there are only a couple of things left to test/understand/decide.
I would double check the first point and make a decision on the second one and then we can merge this branch. |
There was a problem hiding this comment.
Pull request overview
Adds a “known hotspots selection” computation to the omega/site-comparison pipeline path, producing hotspot vs non-hotspot aggregated Obs/Exp statistics from existing site-comparison outputs and an external hotspots definition file. Also updates depth plotting to avoid generating heavy plots for very large panels/samples and adjusts process outputs accordingly.
Changes:
- Integrates a new
HOTSPOTS_SELECTIONNextflow module into the omega subworkflow, gated byparams.hotspots_annotationandparams.hotspots_definition_file. - Adds
bin/compute_hotspots_selection.pyto aggregate site-comparison outputs into hotspot/non-hotspot groups and compute Obs/Exp and p-values. - Makes depth plot PDF outputs optional and skips plot generation when
samples_list/genes_listare large.
Reviewed changes
Copilot reviewed 6 out of 8 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| subworkflows/local/omega/main.nf | Wires hotspots-selection module into the omega analysis workflow behind params. |
| modules/local/hotspots_selection/main.nf | New process wrapper to run compute_hotspots_selection.py on site-comparison outputs. |
| bin/compute_hotspots_selection.py | New CLI tool computing hotspot selection statistics from site-comparison outputs + hotspots file. |
| conf/results_outputs.config | Adds publishing rule for hotspot-selection outputs. |
| bin/plot_depths.py | Skips plotting (and within-gene plotting) for large sample/gene counts. |
| modules/local/plot/depths_summary/main.nf | Marks plot/depth wildcard outputs optional to accommodate skipped plot generation. |
| patch_omega_main.py | Adds an unreferenced patching utility script (should likely not be in repo). |
| patch_omega_main2.py | Adds an incomplete/unreferenced patching utility script (should likely not be in repo). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Thanks for asking me to work on this. I will get started on it and keep this PR's description up to date as I form a plan and make progress.