I have a set of SNPs from a GWAS study that I would like to get all surrounding SNPs in LD. I found a R package called 'FunciSNP' to find SNPs in LD that overlap genome annotations.
My SNP is a tab-deliminated file that looks like this:
16:31357553 rs11574637 EUR
18:71175007 rs17083844 EUR
1:71808790 rs12141391 EUR
2:191099907 rs7574865 EUR
5:42375141 rs979233 EUR
6:32638107 rs2187668 EUR
I tried running the package without specifying the annotations (as I'm not interested in parsing the SNPs down based on annotation):
Lupis_LD <- getFSNPs(snp.regions.file = "~/Lupis_tags.txt", bio.features.loc = NULL,
+ built.in.biofeatures = FALSE,
+ method.p = "BH",
+ search.window = 10000,
+ primary.server = "ebi")
And get the following error:
Version: 1.10.0
System: Darwin
::args used::
verbose: FALSE
cores in use: 2
snp.regions.file: ~/Lupis_tags.txt
p-value adjustment by: BH
Bio Features: no biofeatures
selected
Number of TagSNPs Interrogated: 157 representing 157 unique tagSNPs
Error in TSList(snp.list) : all elements in '...' must be TagSNP objects
In addition: Warning message:
In mclapply(tag.snp.names, CreateCorrelatedSNPs, snp.list = snp.list, :
all scheduled cores encountered errors in user code
This is not completely unexpected as the man does specify the need for a annotation file.
However, when I specify a .bed file in the following format:
chr1 713841 714424
chr1 740179 740374
chr1 762054 763213
chr1 793276 793906
chr1 800103 800829
chr1 800882 801440
chr1 801654 801816
chr1 805074 805595
chr1 825794 826048
chr1 839468 842588
And re-run the command:
Lupis_LD <- getFSNPs(snp.regions.file = "~/Lupis_tags.txt",
+ bio.features.loc = "~/Downloads/GM12878_DNase.bed",
+ built.in.biofeatures = FALSE,
+ method.p = "BH",
+ search.window = 10000,
+ primary.server = "ebi")
I get the following error:
Version: 1.10.0
System: Darwin
::args used::
verbose: FALSE
cores in use: 2
snp.regions.file: ~/Lupis_tags.txt
p-value adjustment by: BH
Bio Features: 0:
Number of TagSNPs Interrogated: 157 representing 157 unique tagSNPs
Error in TSList(snp.list) : all elements in '...' must be TagSNP objects
In addition: Warning message:
In mclapply(tag.snp.names, CreateCorrelatedSNPs, snp.list = snp.list, :
all scheduled cores encountered errors in user code
I have two questions:
1. Based on the package vignette, I see no glaring error in my files or command. What other changes can I attempt to get this package to work? So far, I am only successful using the package's provided example files and not my own.
2. Is there a way I can modify the FunciSNP package to remove the need for specifying an annotation file? Based on my cursory overview it doesn't seem necessary but I'm not sure of how to go about doing that and would appreciate getting pointed to some resources and/or examples.
agree. at this point, I would try a different tool. There are several sources for LD for a given SNP, including GWAS SNPs. You could also derive these empirically yourself by:
1) Downloading 1kg data 2) Using a tool like Plink2 to simultaneously subset the data by ethnicity and output LD matrix or pairwise relationships between the GWAS snp and each snp in the locus for that ethnicity (since you have ethnicity in your input data, above).
The SNAP application has been taken down due to a lack of resources to support it and because the data sets used were increasingly dated since 2017