linnabrown / topld_api

This is web server API for http://topld.genetics.unc.edu

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Query returning empty output

kirk-broad opened this issue · comments

commented

There seems to a be a size limit to the query output. Using the same set of rsIDs, I will receive proper outputs (outputLD.txt, outputInfo.txt) when using an R2 threshold of 0.8, but as I lower the threshold, at a certain point (e.g. 0.3), I receive empty outputs.
This works:
topld_api -thres 0.8 -pop EUR -maf 0.01 -inFile my_rsIDs.txt -outputLD outputLD.txt -outputInfo outputInfo.txt
This does not work:
topld_api -thres 0.3 -pop EUR -maf 0.01 -inFile my_rsIDs.txt -outputLD outputLD.txt -outputInfo outputInfo.txt

If I then use a smaller subset of input SNPs, that same threshold of 0.3 will work correctly. I am using well below the input size limit of 500 SNPs that is noted in the AJHG 2022 paper.

For queries that we expect to return larger outputs (higher # of SNPs or lower R2 thresholds), is the best fix to just perform the queries in small batches?

Thank you for this great tool!

Hi Kirk, thank you for using our tool. I just tried -thres 0.3, and the program can give non-empty outputs for the example data. Could you share the input file with me and let me look deeper? Thank you.

I just update the web API code (remote code, no need git pull) and you can test it (still using topld_api -thres 0.3 -pop EUR -maf 0.01 -inFile my_rsIDs.txt -outputLD outputLD.txt -outputInfo outputInfo.txt)

commented

Thank you for the quick response, however I am still having the same issue after the update.

I've attached the input file that I am using. For this set of SNPs, it seems that any R2 threshold below 0.6 does not work. I am running the API on a remote cluster, so perhaps it's something on my end.

my_rsIDs.txt

I tried ./topld_api -thres 0.3 -pop AFR -maf 0.01 -inFile input2.txt -outputLD outputLD.txt -outputInfo outputInfo.txt and it works pretty well. Here are the result.
outputInfo.txt
outputLD.txt

commented

That works for me as well, but when I switch out "AFR" for "EUR", it does not work.

I'm guessing it has to do with the output size? For example, when run with -thres 0.6 -pop EUR, the resulting LD file has 17,741 rows, compared to just 7,814 rows when using -thres 0.6 -pop AFR.

I also got the empty file when using 0.3. Thank you for reporting this bug. I will take a deep look to revise the code.

I will maintain the website tonight and let you know when the website is ready.

commented

Hi. I am also having the same issue with empty output.

I am using ./topld_api -thres 0.9 -pop EUR -maf 0.01 -inFile input.txt -outputLD outputLD.txt -outputInfo outputInfo.txt. This worked for my file with 228 SNPs, but not 493SNPs, as attached.
228SNPs.txt
493SNPs.txt

is there any update on this bug works with small test input but with larger input > 400 variant it gives empty output