<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
Dear Ensembl dev team,<br class="">
<div class="">
<div class=""><br class="">
</div>
<div class="">I try to see what populations are available from your ENSEMBL api, and with the following script I get the populations listed below:</div>
<div class=""><br class="">
</div>
<div class="">
<div class=""><font face="Courier New" class="">use strict;</font></div>
<div class=""><font face="Courier New" class="">use warnings;</font></div>
<div class=""><font face="Courier New" class="">use Bio::EnsEMBL::Registry;</font></div>
<div class=""><font face="Courier New" class=""><br class="">
</font></div>
<div class=""><font face="Courier New" class="">my $registry = 'Bio::EnsEMBL::Registry';</font></div>
<div class=""><font face="Courier New" class=""><br class="">
</font></div>
<div class=""><font face="Courier New" class="">$registry->load_registry_from_db(</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>-host => '<a href="http://ensembldb.ensembl.org" class="">ensembldb.ensembl.org</a>',</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>-user => 'anonymous'</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>);</font></div>
<div class=""><font face="Courier New" class=""><br class="">
</font></div>
<div class=""><font face="Courier New" class=""># Connect to the databases:</font></div>
<div class=""><font face="Courier New" class="">my $variation_adaptor = $registry->get_adaptor('homo_sapiens', 'variation', 'variation');</font></div>
<div class=""><font face="Courier New" class="">my $pop_adaptor = $registry->get_adaptor('homo_sapiens', 'variation', 'population');</font></div>
<div class=""><font face="Courier New" class="">$variation_adaptor->db->use_vcf(1);</font></div>
<div class=""><font face="Courier New" class="">$pop_adaptor->db->use_vcf(1);</font></div>
<div class=""><font face="Courier New" class=""><br class="">
</font></div>
<div class=""><font face="Courier New" class=""># Print out all available populations:</font></div>
<div class=""><font face="Courier New" class="">my $ld_populations = $pop_adaptor->fetch_all_LD_Populations();</font></div>
<div class=""><font face="Courier New" class="">foreach my $ld_pop (@$ld_populations) {</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>print $ld_pop->name, "\n";</font></div>
<div class=""><font face="Courier New" class="">}</font></div>
<div class=""><font face="Courier New" class=""><br class="">
</font></div>
<div class=""><font face="Courier New" class="">my $ld_population = $pop_adaptor->fetch_by_name('EUR');</font></div>
</div>
<div class=""><br class="">
</div>
<div class="">POPULATIONS:</div>
<div class="">
<div class="">1000GENOMES:phase_3:ACB</div>
<div class="">1000GENOMES:phase_3:ASW</div>
<div class="">1000GENOMES:phase_3:BEB</div>
<div class="">1000GENOMES:phase_3:CDX</div>
<div class="">1000GENOMES:phase_3:CEU</div>
<div class="">1000GENOMES:phase_3:CHB</div>
<div class="">1000GENOMES:phase_3:CHS</div>
<div class="">1000GENOMES:phase_3:CLM</div>
<div class="">1000GENOMES:phase_3:ESN</div>
<div class="">1000GENOMES:phase_3:FIN</div>
<div class="">1000GENOMES:phase_3:GBR</div>
<div class="">1000GENOMES:phase_3:GIH</div>
<div class="">1000GENOMES:phase_3:IBS</div>
<div class="">1000GENOMES:phase_3:ITU</div>
<div class="">1000GENOMES:phase_3:JPT</div>
<div class="">1000GENOMES:phase_3:KHV</div>
<div class="">1000GENOMES:phase_3:LWK</div>
<div class="">1000GENOMES:phase_3:MAG # <— This is the population I cannot find documentation for</div>
<div class="">1000GENOMES:phase_3:MSL</div>
<div class="">1000GENOMES:phase_3:MXL</div>
<div class="">1000GENOMES:phase_3:PEL</div>
<div class="">1000GENOMES:phase_3:PJL</div>
<div class="">1000GENOMES:phase_3:PUR</div>
<div class="">1000GENOMES:phase_3:STU</div>
<div class="">1000GENOMES:phase_3:TSI</div>
<div class="">1000GENOMES:phase_3:YRI</div>
</div>
<div class=""><br class="">
</div>
<div class="">This page explains the population codes: <a href="http://www.1000genomes.org/category/population/" class="">http://www.1000genomes.org/category/population/</a></div>
<div class="">However, I can’t find the extended version of the MAG abbreviation (marked above), not when searching elsewhere either. Which population is it, and what is its super population? </div>
<div class="">Also, do you have populations from other research initiatives than 1000G?</div>
<div class=""><br class="">
</div>
<div class="">I have also been wondering if I should tell all adaptors, that is LDFeatureContainerAdaptor, VariationAdaptor and PopulationAdaptor, to use vcf(1) when I want both database and vcf data? I mainly use it to get out variants in LD with each other.
 Will setting different vcfs on the different adaptors affect the variants extracted? Or is it enough to set vcf(1) on the VariationAdaptor, for instance?</div>
<div class=""><br class="">
</div>
<div class="">Even though the super populations are not on the printed list when using the population adaptor to print out all LD populations, is it possible to use $population_adaptor->fetch_by_name(‘EUR’) for instance? I tried this, but got no variants in
 LD. Do you have any ways this is possible to do, or a alternative list of super populations one can generate in some way? Or should I simply gather all subpopulations, such as EUR = (CEU, TSI, FIN, GBR, IBS) and loop through all these to get the super population
 LD?</div>
<div class=""><br class="">
</div>
<div class="">Here is a script where I tried to use the super population «EUR» directly, without success (but no error message either, it just finds no LD variants):</div>
<div class=""><br class="">
</div>
<div class="">
<div class=""><font face="Courier New" class="">use strict;</font></div>
<div class=""><font face="Courier New" class="">use warnings;</font></div>
<div class=""><font face="Courier New" class="">use Bio::EnsEMBL::Registry;</font></div>
<div class=""><font face="Courier New" class=""><br class="">
</font></div>
<div class=""><font face="Courier New" class="">my $inputfile = $ARGV[0];</font></div>
<div class=""><font face="Courier New" class="">my $outputfile = $ARGV[1];</font></div>
<div class=""><font face="Courier New" class="">my $r_limit = $ARGV[2];</font></div>
<div class=""><font face="Courier New" class=""><br class="">
</font></div>
<div class=""><font face="Courier New" class="">open (IN, "<$inputfile");</font></div>
<div class=""><font face="Courier New" class="">open (OUT, ">$outputfile");</font></div>
<div class=""><font face="Courier New" class=""><br class="">
</font></div>
<div class=""><font face="Courier New" class="">my $registry = 'Bio::EnsEMBL::Registry';</font></div>
<div class=""><font face="Courier New" class=""><br class="">
</font></div>
<div class=""><font face="Courier New" class="">$registry->load_registry_from_db(</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>-host => '<a href="http://ensembldb.ensembl.org" class="">ensembldb.ensembl.org</a>',</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>-user => 'anonymous'</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>);</font></div>
<div class=""><font face="Courier New" class=""><br class="">
</font></div>
<div class=""><font face="Courier New" class=""># Connect to the databases:</font></div>
<div class=""><font face="Courier New" class="">my $variation_adaptor = $registry->get_adaptor('homo_sapiens', 'variation', 'variation');</font></div>
<div class=""><font face="Courier New" class="">my $ldfc_adaptor = $registry->get_adaptor('homo_sapiens', 'variation', 'ldfeaturecontainer');</font></div>
<div class=""><font face="Courier New" class="">my $pop_adaptor = $registry->get_adaptor('homo_sapiens', 'variation', 'population');</font></div>
<div class=""><font face="Courier New" class="">$variation_adaptor->db->use_vcf(1);</font></div>
<div class=""><font face="Courier New" class=""><br class="">
</font></div>
<div class=""><font face="Courier New" class="">my $ld_population = $pop_adaptor->fetch_by_name('EUR');</font></div>
<div class=""><font face="Courier New" class=""><br class="">
</font></div>
<div class=""><font face="Courier New" class=""># Loop through all SNPs available and find SNPs in LD</font></div>
<div class=""><font face="Courier New" class="">while(<IN>) {</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>chomp;</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>my $variation_name = $_;</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>my $variation = $variation_adaptor->fetch_by_name($variation_name);</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>my @var_features = @{ $variation->get_all_VariationFeatures() };</font></div>
<div class=""><font face="Courier New" class=""><br class="">
</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>foreach my $vf (@var_features) {</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>my $rsid = $vf->name;</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>print $rsid, "\n";</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>my $start = $vf->start;</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>my $region = $vf->seq_region_name;</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>print OUT "$region\t$rsid\t$start\n";</font></div>
<div class=""><span class="Apple-tab-span" style="white-space:pre"><font face="Courier New" class=""></font></span></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>my $ldfc = $ldfc_adaptor->fetch_by_VariationFeature($vf, $ld_population);</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>my @ld_values = @{ $ldfc->get_all_ld_values() };</font></div>
<div class=""><font face="Courier New" class="">      <span class="Apple-tab-span" style="white-space:pre">
</span>foreach my $ld_hash (@ld_values) {</font></div>
<div class=""><font face="Courier New" class="">        <span class="Apple-tab-span" style="white-space:pre">
</span>my $r2 = $ld_hash->{r2};</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>       
<span class="Apple-tab-span" style="white-space:pre"></span>if ($r2 >= $r_limit) {</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>   <span class="Apple-tab-span" style="white-space:pre">
</span>my $variation_name1 = $ld_hash->{variation1}->variation_name;</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>   <span class="Apple-tab-span" style="white-space:pre">
</span>my $variation_name2 = $ld_hash->{variation2}->variation_name;</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>   <span class="Apple-tab-span" style="white-space:pre">
</span>my $pos1 = $ld_hash->{variation1}->seq_region_name;</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>   <span class="Apple-tab-span" style="white-space:pre">
</span>my $pos2 = $ld_hash->{variation2}->seq_region_name;</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>   <span class="Apple-tab-span" style="white-space:pre">
</span>my $start1 = $ld_hash->{variation1}->start;</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>   <span class="Apple-tab-span" style="white-space:pre">
</span>my $start2 = $ld_hash->{variation2}->start;</font></div>
<div class=""><font face="Courier New" class=""><br class="">
</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>   <span class="Apple-tab-span" style="white-space:pre">
</span>if ($variation_name1 eq $rsid) {</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>   <span class="Apple-tab-span" style="white-space:pre">
</span>print OUT "$pos2\t$variation_name2\t$start2\tr2=$r2\n";</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>   <span class="Apple-tab-span" style="white-space:pre">
</span>} else {</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>   <span class="Apple-tab-span" style="white-space:pre">
</span>print OUT "$pos1\t$variation_name1\t$start1\tr2=$r2\n";        <span class="Apple-tab-span" style="white-space:pre">
</span></font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>   <span class="Apple-tab-span" style="white-space:pre">
</span>}</font></div>
<div class=""><font face="Courier New" class="">        <span class="Apple-tab-span" style="white-space:pre">
</span>}</font></div>
<div class=""><font face="Courier New" class="">      <span class="Apple-tab-span" style="white-space:pre">
</span>}</font></div>
<div class=""><font face="Courier New" class=""><span class="Apple-tab-span" style="white-space:pre"></span>}</font></div>
<div class=""><font face="Courier New" class="">}</font></div>
<div class=""><font face="Courier New" class="">close OUT;</font></div>
<div class=""><font face="Courier New" class="">close IN;</font></div>
</div>
<div class=""><br class="">
</div>
<div class="">Best,</div>
<div class="">Johanne Håøy Horn</div>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
</div>
</body>
</html>