North Atlantic rocky intertidal species have been shaped by repeated glaciations and strong latitudinal temperature gradients, making them an excellent system to study postglacial phylogeography and thermal tolerance. Population genetics data from northwestern Atlantic species, however, often show patterns inconsistent with the prediction that high dispersal should generate weaker genetic structure among populations. Here we used next-generation sequencing restriction-associated DNA tags (RAD-seq) and a transcriptome assembled from RNA-seq data to analyze the genetic structure of northwestern Atlantic populations of the low-dispersal intertidal snail Nucella lapillus. Although previous studies in this region have detected almost no genetic structure in N. lapillus, our phylogenomic approach identified a well-supported split between northern and southern clades. By comparing RAD-seq data and our transcriptome assembly, we identified thousands of fixed single-nucleotide polymorphisms (SNPs) between these latitudinal clades that map to protein-coding genes, including genes associated with heat-stress tolerance. These fixed SNPs might represent loci under selection for different thermal regimes in the northwestern Atlantic.
IUPACAlignmentLessThan4SNPsPhylipFormat
This is a Phylip file alignment (not interleaved) of RAD-seq assembled data from pooled DNA samples from Nucella lapillus populations along the Northwestern Atlantic. For more information, please contact Nathaniel Chu (nathanieldchu@gmail.com).
RAD-tag data set in TSV format for northwestern Atlantic Nucella lapillus populations
This is the easier to visualize data output (tsv format) from the STACKs assembly described in the paper. It contains all retained "stacks" including those that contain SNPs and those that have a single consensus sequence. Note that stacks with 4 or more SNPs were not used in the analyses. For more information, please contact nathanieldchu@gmail.com
NucellaRadTags.tsv
RAD-tag depths in TSV format
This file contains the depths of reads in the RAD-tag assembly corresponding to the RAD-tag SNP data file. This file was used to approximate allele frequencies in limited instances. For more information, please contact nathanieldchu@gmail.com
NucellaRadTagDepths.tsv
NucellalapillusTranscriptomeAssembly
Transcriptome Assembly from RNA-seq reads assembled into contigs using Trinity in fasta format. For more information, please contact nathanieldchu@gmail.com
Nucella.JA132014.trinity.fa
PCA R script for bca algorithm
Script used to run the bca analysis from the package adegenet (Jombart 2008). For more information, please contact nathanieldchu@gmail.com
R_bca.script.R
IUPACwrapper
Converts a directory of STACKS haplotype export files (in tsv format) into phylip format in IUPAC form (thus incorporating all SNPs). Run via a bash script in python 2.7.3. For more information, please contact nathanieldchu@gmail.com
Extract fixed SNPs along a gradient
Identifies SNPs that vary linearly along a gradient or populations. Fixed is defined as the SNP changes from one allelic identity to another along the predefined gradient without reverting to a past identity. Run via a bash script in python 2.7.3. For more information, please contact nathanieldchu@gmail.com
ExtractLatitudinalPolymorphs.py
Calculate nucleotide diversity for each population
Calculates nucleotide diversity for each population from a STACKS haplotype export file. Run via a bash script in python 2.7.3. For more information, please contact nathanieldchu@gmail.com
NucleotideDivForPop.py
Extract SNPs fixed between two groups
Extracts STACKS that contain SNPs fixed between two groups, where at least a certain number of populations are represented. This script allows for missing data. Accepts a STACKS haplotype export file. Run via a bash script in python 2.7.3. For more information, please contact nathanieldchu@gmail.com
ExtractFixedSNPs.py
Fst Bootstrap resampling statistic
Calculates the significance of a data subset's Fst value versus a normal distribution of bootstrap resampled data subsets of equal size. Operates on multiple cores. Take a STACKS haplotype export file as input. Run via a bash script in python 2.7.3. For more information, please contact nathanieldchu@gmail.com
bootstrapFST.py
Fst binomial procedure
Calculates Fst per population using a bionomial procedure as in Hohenlohe 2010. Accepts a STACKS haplotype export file as input. Run via a bash script in python 2.7.3. For more information, please contact nathanieldchu@gmail.com
Fstbinomial.py
Fst molecular diversity
Calculates Fst values between pairs of populations based on a molecular diversity procedure from Hudson et al. 1992. Accepts a STACKS haplotype export file as input. Run via a bash script in python 2.7.3. For more information, please contact nathanieldchu@gmail.com
fstfromnucdiv.py
filter_read_names.fq
Perl script to filter raw illumina reads by name and length. Written by Stefan Kaluziak. Please contact Nathaniel Chu (nathanieldchu@gmail.com) for more information.