File tree Expand file tree Collapse file tree
src/workflows/run_benchmark Expand file tree Collapse file tree Original file line number Diff line number Diff line change 124124
125125* Disabled parallelization of ` metrics/cms ` + cms distributions are now kept in the output AnnData object (PR #83 ).
126126
127- * Add arguments for including/excluding methods in the benchmarking workflow (PR #100 ).
127+ * Add arguments for including/excluding methods and metrics in the benchmarking workflow (PR #100 ).
128128
129129
130130## BUG FIXES
Original file line number Diff line number Diff line change @@ -58,6 +58,18 @@ argument_groups:
5858 multiple : true
5959 description : |
6060 A list of method ids to exclude. If specified, all methods except the ones listed will be run.
61+ - name : Metrics
62+ arguments :
63+ - name : " --metrics_include"
64+ type : string
65+ multiple : true
66+ description : |
67+ A list of metric ids to include. If specified, only these metrics will be run.
68+ - name : " --metrics_exclude"
69+ type : string
70+ multiple : true
71+ description : |
72+ A list of metric ids to exclude. If specified, all metrics except the ones listed will be run.
6173
6274resources :
6375 - type : nextflow_script
Original file line number Diff line number Diff line change @@ -135,9 +135,15 @@ workflow run_wf {
135135
136136 // run only control methods & filter by method_ids
137137 filter : { id , state , comp ->
138- def id_filter = ! state. method_ids || state. method_ids. contains(comp. config. name)
138+ def method_check = checkItemAllowed(
139+ comp. config. name,
140+ state. methods_include,
141+ state. methods_exclude,
142+ " methods_include" ,
143+ " methods_exclude"
144+ )
139145 def method_filter = comp. config. info. type == " control_method"
140- id_filter && method_filter
146+ method_check && method_filter
141147 },
142148
143149 // define a new 'id' by appending the method name to the dataset id
@@ -168,6 +174,18 @@ workflow run_wf {
168174 id : { id , state , comp ->
169175 id + " ." + comp. config. name
170176 },
177+ filter : { id , state , comp ->
178+ // filter by metric_ids
179+ def metric_check = checkItemAllowed(
180+ comp. config. name,
181+ state. metrics_include,
182+ state. metrics_exclude,
183+ " metrics_include" ,
184+ " metrics_exclude"
185+ )
186+ // filter by method_id
187+ metric_check
188+ },
171189 // use 'fromState' to fetch the arguments the component requires from the overall state
172190 fromState : [
173191 input_unintegrated : " input_unintegrated" ,
You can’t perform that action at this time.
0 commit comments