Kamil Slowikowski
About Archive

SNP Proxies

I made a simple web service to list proxies for SNPs in the 1000 Genomes Project. Check out an example of the JSON output. I used it to make an application powered by Highcharts for viewing the r2 linkage disequilibrium plot of any SNP in any population.

Application

SNP proxies for rs42 in EUR

View SNPs in linkage disequilibrium (LD) with any given SNP, calculated using individuals from a specific population.

Details

For each SNP, I precomputed the r2 and D’ values for all neighboring SNPs within a 1 Mb window. I did this for each population (AFR, AMR, ASN, EUR). Next, I wrote a PHP script to retrieve those precomputed values from my files.

You can download the data files here:

http://broadinstitute.org/~slowikow/tgp/pairwise_ld/

Contact me if you’d like the code for computing these values.

Example

http://www.broadinstitute.org/~slowikow/snp_proxies.php?q=rs42&r2=0.95&pop=ASN

Parameters

Name    Example     Description
----    -------     -----------
q       q=rs42      rs identifier of a SNP.
pop     pop=EUR     1000 Genomes population used to compute r2 and D'.
r2      r2=0.5      Pearson correlation coefficient.
dp      dp=0.5      D' value.

Output

{
    "status": "found proxies",
    "snp": {
        "name": "rs42",
        "chrom": "chr7",
        "pos": 11586351
    },
    "r2": 0.95,
    "dp": 0,
    "pop": "ASN",
    "proxies": [
        {
            "name": "rs55",
            "chrom": "chr7",
            "pos": 11585628,
            "r2": 1,
            "dp": 1
        },
        {
            "name": "rs54",
            "chrom": "chr7",
            "pos": 11586050,
            "r2": 0.991171,
            "dp": 1
        },
        {
            "name": "rs44",
            "chrom": "chr7",
            "pos": 11586190,
            "r2": 0.991171,
            "dp": 1
        },
        {
            "name": "rs43",
            "chrom": "chr7",
            "pos": 11586267,
            "r2": 0.991171,
            "dp": 1
        }
    ]
}