in reply to Tracing an Uninitialized Error
Most likely explanation is that there's actually an empty line at the end of your data file, which in turn causes the last emelent of @SNPs to be an empty string, which in turn will cause the undefined $position
Depending on your editor, the empty line might not be easy to spot. Doing a hexdump or similar might help.
In Section
Seekers of Perl Wisdom