@@ -25,9 +25,6 @@ def __init__(
2525 # to the superclass constructor.
2626 super ().__init__ (** kwargs )
2727
28- # Set up cache variables.
29- self ._cache_annotator = None
30-
3128 @check_types
3229 @doc (
3330 summary = """
@@ -46,37 +43,30 @@ def haplotypes_frequencies(
4643 region : base_params .region ,
4744 cohorts : base_params .cohorts ,
4845 sample_query : Optional [base_params .sample_query ] = None ,
46+ sample_query_options : Optional [base_params .sample_query_options ] = None ,
4947 min_cohort_size : base_params .min_cohort_size = 10 ,
5048 sample_sets : Optional [base_params .sample_sets ] = None ,
5149 chunks : base_params .chunks = base_params .native_chunks ,
5250 inline_array : base_params .inline_array = base_params .inline_array_default ,
5351 ) -> pd .DataFrame :
5452 # Access sample metadata.
5553 df_samples = self .sample_metadata (
56- sample_sets = sample_sets , sample_query = sample_query
54+ sample_sets = sample_sets ,
55+ sample_query = sample_query ,
56+ sample_query_options = sample_query_options ,
5757 )
5858
5959 # Build cohort dictionary, maps cohort labels to boolean indexers.
60- coh_dict = locate_cohorts (cohorts = cohorts , data = df_samples )
61-
62- # Remove cohorts below minimum cohort size.
63- coh_dict = {
64- coh : loc_coh
65- for coh , loc_coh in coh_dict .items ()
66- if np .count_nonzero (loc_coh ) >= min_cohort_size
67- }
68-
69- # Early check for no cohorts.
70- if len (coh_dict ) == 0 :
71- raise ValueError (
72- "No cohorts available for the given sample selection parameters and minimum cohort size."
73- )
60+ coh_dict = locate_cohorts (
61+ cohorts = cohorts , data = df_samples , min_cohort_size = min_cohort_size
62+ )
7463
7564 # Access haplotypes.
7665 ds_haps = self .haplotypes (
7766 region = region ,
7867 sample_sets = sample_sets ,
7968 sample_query = sample_query ,
69+ sample_query_options = sample_query_options ,
8070 chunks = chunks ,
8171 inline_array = inline_array ,
8272 )
@@ -152,14 +142,17 @@ def haplotypes_frequencies_advanced(
152142 period_by : frq_params .period_by ,
153143 sample_sets : Optional [base_params .sample_sets ] = None ,
154144 sample_query : Optional [base_params .sample_query ] = None ,
145+ sample_query_options : Optional [base_params .sample_query_options ] = None ,
155146 min_cohort_size : base_params .min_cohort_size = 10 ,
156147 ci_method : Optional [frq_params .ci_method ] = frq_params .ci_method_default ,
157148 chunks : base_params .chunks = base_params .native_chunks ,
158149 inline_array : base_params .inline_array = base_params .inline_array_default ,
159150 ) -> xr .Dataset :
160151 # Load sample metadata.
161152 df_samples = self .sample_metadata (
162- sample_sets = sample_sets , sample_query = sample_query
153+ sample_sets = sample_sets ,
154+ sample_query = sample_query ,
155+ sample_query_options = sample_query_options ,
163156 )
164157
165158 # Prepare sample metadata for cohort grouping.
@@ -189,6 +182,7 @@ def haplotypes_frequencies_advanced(
189182 region = region ,
190183 sample_sets = sample_sets ,
191184 sample_query = sample_query ,
185+ sample_query_options = sample_query_options ,
192186 chunks = chunks ,
193187 inline_array = inline_array ,
194188 )
0 commit comments