Open leehart opened 2 weeks ago
How best to handle cases like this? E.g. from anoph/h1x.py
anoph/h1x.py
def h1x_gwss( self, contig: base_params.contig, window_size: h12_params.window_size, cohort1_query: base_params.sample_query, cohort2_query: base_params.sample_query, analysis: hap_params.analysis = base_params.DEFAULT, sample_sets: Optional[base_params.sample_sets] = None, cohort_size: Optional[base_params.cohort_size] = h12_params.cohort_size_default, min_cohort_size: Optional[ base_params.min_cohort_size ] = h12_params.min_cohort_size_default, max_cohort_size: Optional[ base_params.max_cohort_size ] = h12_params.max_cohort_size_default, random_seed: base_params.random_seed = 42, chunks: base_params.chunks = base_params.native_chunks, inline_array: base_params.inline_array = base_params.inline_array_default, ) -> Tuple[np.ndarray, np.ndarray]:
def _h1x_gwss( self, contig, analysis, window_size, sample_sets, cohort1_query, cohort2_query, cohort_size, min_cohort_size, max_cohort_size, random_seed, chunks, inline_array, ): # Access haplotype datasets for each cohort. ds1 = self.haplotypes( region=contig, analysis=analysis, sample_query=cohort1_query, sample_sets=sample_sets, cohort_size=cohort_size, min_cohort_size=min_cohort_size, max_cohort_size=max_cohort_size, random_seed=random_seed, chunks=chunks, inline_array=inline_array, ) ds2 = self.haplotypes( region=contig, analysis=analysis, sample_query=cohort2_query, sample_sets=sample_sets, cohort_size=cohort_size, min_cohort_size=min_cohort_size, max_cohort_size=max_cohort_size, random_seed=random_seed, chunks=chunks, inline_array=inline_array, )
E.g. we could add support for
cohort1_query_options: base_params.sample_query_options, cohort2_query_options: base_params.sample_query_options,
Or just one shared set of options, e.g.
sample_query_options: base_params.sample_query_options,
In this case, haplotypes() already supports sample_query_options.
haplotypes()
sample_query_options
Or just one shared set of options, e.g. sample_query_options: base_params.sample_query_options,
This seems a good approach to me.
How best to handle cases like this? E.g. from
anoph/h1x.py
E.g. we could add support for
Or just one shared set of options, e.g.
In this case,
haplotypes()
already supportssample_query_options
.