Google-Health/genomics-research

ValueError for non-integer FIDs / IIDs

Closed this issue · 1 comments

Hi,

I'm encountering the following error when trying to run DeepNull:

ValueError: invalid literal for int() with base 10 (see screenshot)

The offending line seems to be

if (values[mask] == values[mask].astype(int)).all():
.

I guess it's a remnant from all person IDs in the UK Biobank being integers. I suspect I'm not the only one who will run into this problem, though, so it might be worthwhile to allow for non-integer FIDs/IIDs.

image

Thank you for this issue report! Indeed, the existing code assumed all fields are numeric. A workaround with the existing code is to pass the cast_ints=False flag to the write_plink_or_bolt_file function, but I've just pushed e8dfa6a which fixes the issue. An updated pip package (v0.1.3) is also available on PyPI.