Skip to content

Commit 886c620

Browse files
committed
fix lint error
1 parent 5eaeace commit 886c620

1 file changed

Lines changed: 56 additions & 12 deletions

File tree

malariagen_data/anoph/snp_data.py

Lines changed: 56 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1085,11 +1085,11 @@ def snp_calls(
10851085
del site_mask
10861086

10871087
# Convert lists to tuples to avoid CacheMiss "TypeError: unhashable type: 'list'".
1088-
prepared_regions_tuple: Tuple[Region, ...] = tuple(prepared_regions)
1089-
prepared_sample_sets_tuple: Optional[Tuple[str, ...]] = (
1088+
prepared_regions_tuple: base_params.regions_tuple = tuple(prepared_regions)
1089+
prepared_sample_sets_tuple: Optional[base_params.sample_sets_tuple] = (
10901090
tuple(prepared_sample_sets) if prepared_sample_sets is not None else None
10911091
)
1092-
prepared_sample_indices_tuple: Optional[Tuple[int, ...]] = (
1092+
prepared_sample_indices_tuple: Optional[base_params.sample_indices_tuple] = (
10931093
tuple(prepared_sample_indices)
10941094
if prepared_sample_indices is not None
10951095
else None
@@ -1125,6 +1125,7 @@ def _raw_snp_calls(
11251125
lx = []
11261126
for r in regions:
11271127
ly = []
1128+
assert sample_sets is not None
11281129
for s in sample_sets:
11291130
y = self._snp_calls_for_contig(
11301131
contig=r.contig,
@@ -1405,6 +1406,15 @@ def snp_allele_counts(
14051406
sample_query_options=sample_query_options,
14061407
sample_indices=sample_indices,
14071408
)
1409+
# Convert lists to tuples to avoid CacheMiss "TypeError: unhashable type: 'list'".
1410+
sample_sets_prepped_tuple: Optional[base_params.sample_sets_tuple] = (
1411+
tuple(sample_sets_prepped) if sample_sets_prepped is not None else None
1412+
)
1413+
sample_indices_prepped_tuple: Optional[base_params.sample_indices_tuple] = (
1414+
tuple(sample_indices_prepped)
1415+
if sample_indices_prepped is not None
1416+
else None
1417+
)
14081418
del sample_sets
14091419
del sample_query
14101420
del sample_query_options
@@ -1415,8 +1425,8 @@ def snp_allele_counts(
14151425
del site_mask
14161426
params = dict(
14171427
region=region_prepped,
1418-
sample_sets=sample_sets_prepped,
1419-
sample_indices=sample_indices_prepped,
1428+
sample_sets=sample_sets_prepped_tuple,
1429+
sample_indices=sample_indices_prepped_tuple,
14201430
site_mask=site_mask_prepped,
14211431
site_class=site_class,
14221432
cohort_size=cohort_size,
@@ -1430,7 +1440,17 @@ def snp_allele_counts(
14301440

14311441
except CacheMiss:
14321442
results = self._snp_allele_counts(
1433-
**params, inline_array=inline_array, chunks=chunks
1443+
inline_array=inline_array,
1444+
chunks=chunks,
1445+
region=region_prepped,
1446+
sample_sets=sample_sets_prepped_tuple,
1447+
sample_indices=sample_indices_prepped_tuple,
1448+
site_mask=site_mask_prepped,
1449+
site_class=site_class,
1450+
cohort_size=cohort_size,
1451+
min_cohort_size=min_cohort_size,
1452+
max_cohort_size=max_cohort_size,
1453+
random_seed=random_seed,
14341454
)
14351455
self.results_cache_set(name=name, params=params, results=results)
14361456

@@ -1967,6 +1987,16 @@ def biallelic_diplotypes(
19671987
prepared_region = self._prep_region_cache_param(region=region)
19681988
prepared_site_mask = self._prep_optional_site_mask_param(site_mask=site_mask)
19691989

1990+
# Convert lists to tuples to avoid CacheMiss "TypeError: unhashable type: 'list'".
1991+
prepared_sample_sets_tuple: Optional[base_params.sample_sets_tuple] = (
1992+
tuple(prepared_sample_sets) if prepared_sample_sets is not None else None
1993+
)
1994+
prepared_sample_indices_tuple: Optional[base_params.sample_indices_tuple] = (
1995+
tuple(prepared_sample_indices)
1996+
if prepared_sample_indices is not None
1997+
else None
1998+
)
1999+
19702000
# Delete original parameters to prevent accidental use.
19712001
del sample_sets
19722002
del sample_query
@@ -1979,8 +2009,8 @@ def biallelic_diplotypes(
19792009
region=prepared_region,
19802010
n_snps=n_snps,
19812011
thin_offset=thin_offset,
1982-
sample_sets=prepared_sample_sets,
1983-
sample_indices=prepared_sample_indices,
2012+
sample_sets=prepared_sample_sets_tuple,
2013+
sample_indices=prepared_sample_indices_tuple,
19842014
site_mask=prepared_site_mask,
19852015
site_class=site_class,
19862016
cohort_size=cohort_size,
@@ -1997,7 +2027,21 @@ def biallelic_diplotypes(
19972027

19982028
except CacheMiss:
19992029
results = self._biallelic_diplotypes(
2000-
inline_array=inline_array, chunks=chunks, **params
2030+
inline_array=inline_array,
2031+
chunks=chunks,
2032+
region=prepared_region,
2033+
sample_sets=prepared_sample_sets_tuple,
2034+
sample_indices=prepared_sample_indices_tuple,
2035+
site_mask=prepared_site_mask,
2036+
site_class=site_class,
2037+
cohort_size=cohort_size,
2038+
min_cohort_size=min_cohort_size,
2039+
max_cohort_size=max_cohort_size,
2040+
random_seed=random_seed,
2041+
n_snps=n_snps,
2042+
thin_offset=thin_offset,
2043+
min_minor_ac=min_minor_ac,
2044+
max_missing_an=max_missing_an,
20012045
)
20022046
self.results_cache_set(name=name, params=params, results=results)
20032047

@@ -2011,9 +2055,9 @@ def _biallelic_diplotypes(
20112055
self,
20122056
*,
20132057
region: Union[dict, List[dict]],
2014-
sample_sets: Optional[Tuple[str, ...]],
2015-
sample_indices: Optional[Tuple[int, ...]],
2016-
site_mask: Optional[str],
2058+
sample_sets: Optional[base_params.sample_sets_tuple],
2059+
sample_indices: Optional[base_params.sample_indices_tuple],
2060+
site_mask: Optional[base_params.site_mask],
20172061
site_class: Optional[base_params.site_class],
20182062
cohort_size: Optional[base_params.cohort_size],
20192063
min_cohort_size: Optional[base_params.min_cohort_size],

0 commit comments

Comments
 (0)