Skip to content

Commit 6b10a77

Browse files
jeromekellehermergify[bot]
authored andcommitted
Simplify VCF reader logic
Remove distinction between present with missing value, versus missing
1 parent ec365f0 commit 6b10a77

File tree

1 file changed

+5
-14
lines changed

1 file changed

+5
-14
lines changed

sgkit/io/vcf/vcf_reader.py

+5-14
Original file line numberDiff line numberDiff line change
@@ -278,17 +278,11 @@ class InfoAndFormatFieldHandler(VcfFieldHandler):
278278

279279
def add_variant(self, i: int, variant: Any) -> None:
280280
if self.category == "INFO":
281-
try:
282-
val = variant.INFO[self.key]
283-
present = True
284-
except KeyError:
285-
present, val = False, None
286-
287-
if present:
281+
val = variant.INFO.get(self.key, None)
282+
self.array[i] = self.missing_value
283+
if val is not None:
288284
assert self.array.ndim in (1, 2)
289285
if self.array.ndim == 1:
290-
if val is None:
291-
val = self.missing_value
292286
self.array[i] = val
293287
elif self.array.ndim == 2:
294288
self.array[i] = self.fill_value
@@ -300,11 +294,8 @@ def add_variant(self, i: int, variant: Any) -> None:
300294
v if v is not None else self.missing_value
301295
)
302296
except TypeError: # val is a scalar
303-
self.array[i, 0] = (
304-
val if val is not None else self.missing_value
305-
)
306-
else:
307-
self.array[i] = self.missing_value
297+
self.array[i, 0] = val
298+
308299
elif self.category == "FORMAT":
309300
val = variant.format(self.key)
310301
if val is not None:

0 commit comments

Comments
 (0)