BrowserUk,
Thank you for trying and posting your version. I have been trying my code at my end and it has been working. I couldn't figure out why you were getting the errors that you listed in your post until now. I copied the ref.txt and query.txt from my earlier post and then tried my code and I got the same error as you. I realized that while formatting the code all tabs in the ref.txt and query.txt got replaced by spaces in the input text files while my local copy was still tab delimited. Once I replaced the tabs i.e. making the ref.txt and query.txt as tab delimited files, my code worked.
May be I didn't explain the desired output properly.
1. match keys in ref and text, using the start and end, keep count of the number of overlapping fragments between the two.
2. If there is overlap, foreach key foreach start in the query, report the number of overlapping fragments with the reference.
3. If there are no overlaps insert a 0 in the desired column.
Below is the desired output: