selscan not outputting ihs
2
1
Entering edit mode
5.4 years ago
biosol ▴ 170

Hi all,

I'm trying to calculate iHS with selscan: the program seems to apparently run normal, but my output file is empty. I've phased my data with SHAPEIT and tried the following commands:

selscan --ihs --vcf input.phased.vcf --map input.phased.map --out output.phased
selscan --ihs --hap input.phased.haps --map input.phased.map --out output.phased

I've read in this post that running the program with a vcfinstead of an haplotypes file should give no trouble, however the output file is empty. My .mapfile looks like this:

 22      ID1       0       17075353
 22      ID2       0       17301492
 22      ID3       0       17306184
 22      ID4       0       17306270
 22      ID5       0       17315503

And my .hapsfile looks like this:

   22 ID1 17339003 A G 0 0 1 0 1 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0... 
   22 ID2 17347294 G A 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1...

Please, does anyone see something I'm missing? Thank you very much in advanced!

selscan haplotypes vcf • 3.0k views
ADD COMMENT
0
Entering edit mode

When I calculated xpehh using selscan, I also encountered the same problem. It seems to run normal ,but the output file is empty,only the header. Really confused...

ADD REPLY
1
Entering edit mode
3.1 years ago
drnayandvm11 ▴ 10

Your output file is empty because your map file does not have genetic position. However, Selscan can do these analyses using physical position. To do that, you have to add a flag "--pmap" while you are running any analyses. I hope this helps you.

ADD COMMENT
0
Entering edit mode
5.2 years ago

If you are still wondering why selscan is generating an empty file, it is because the third column of your map file (the genetic distance) is filled with zeroes, most likely because you're working with a nonmodel organism. The program needs this column in order to work (https://github.com/szpiech/selscan/issues/32). Luckily, selscan calculations can be performed using only physical distances (https://github.com/szpiech/selscan/issues/10), so you should simply copy the fourth column to replace the third one:

awk '{ print $1"\t"$2"\t"$4"\t"$4 }' old_file.map > new_file.map
ADD COMMENT

Login before adding your answer.

Traffic: 785 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6