<p><code>snippy-core</code> is a tool that processes the <code>snippy_outdir_{1..n}</code> folders and produces the following files:</p>

<ol>
<li><p><code>core.aln</code> – a fasta format file that contains only the polymorphic sites (of {'A', 'C', 'T' and 'G'}) in your input set, whose length tends to decrease asymptotically as more isolates are added</p></li>
<li><p><code>core.full.aln</code> – a fasta format file that contains all the core sites and base calls at any site where the reference has a site. The reference is not padded but the sequences mapped to it may be padded with gaps and 'N's to match the length of the reference.  The alignment length does not change as more isolates are added.</p></li>
</ol>

<p><code>snippy{-core}</code> was written by Torsten Seemann et al.  <code>snp-sites</code> was written by Andrew Page et al.   <code>snp-sites</code> will reduce any alignment to the core polymorphic sites (columns) and will still output a fasta.  Therefore the output of a <code>core.aln</code> processed through <code>snp-sites</code> should be the identical the input.  All fasta alignments can then be processed downstream using your tree inference package of choice (e.g., <code>FastTree</code>, <code>IQ-Tree</code>, <code>MrBayes</code>, <code>BEAST</code> ...).  If you want a distance matrix output from a fasta alignment, use something like <code>snp-dists</code>, also written by Torsten Seemann, or the <code>APE</code> package in <code>R</code>.  Be sure to consider how gaps and Ns are treated during this step.  </p>

CC BY-SA 4.0
2022-02-23T05:59:25.020Z
Thank you so much for this. Was breaking my head for a long time. Its working now.
Afra Shamnath
CC BY-SA 4.0
2018-12-03T01:23:15.830Z
2018-12-03T01:23:15.830Z
user3479780
<p>I have a number of sequences and a reference genome. </p>

<p>I used <a href="http://www.vicbioinformatics.com/software.snippy.shtml" rel="nofollow noreferrer"><code>snippy</code></a> to align each individual sequence with the reference genome. I then used <code>snippy-core</code> on the <code>*.aln</code> files from <code>snippy</code> which produced a new <code>*.aln</code> file, and a <code>*.full.aln</code>. 
It is my understanding that the new <code>*.aln</code> file contains a core SNP alignment with only bases shared by all of my sequences, and that the <code>*.full.aln</code> file contains the core genome alignment with all bases of each sequence aligned to the reference genome - regardless of variation between sequences. Is my understanding correct? If not where am I going wrong?</p>

<p>Further, the program <code>snp-sites</code> uses both the new <code>*.aln</code> and <code>*.full.aln</code> file to produce a file which can be run through <code>FastTree</code> to produce a phylogenetic tree. Does this just process the files to give the phylogenetic distance between each of my sequences? I don't really understand what this step achieves at all...</p>

<phylogenetics><snp>
Does the ".full.aln" file produced by snippy-core contain all bases of my input sequences aligned to the reference genome?
# Does the ".full.aln" file produced by snippy-core contain all bases of my input sequences aligned to the reference genome?

(Asked by: username_0 on 2018-11-24)

I have a number of sequences and a reference genome.

I used [`snippy`](http://www.vicbioinformatics.com/software.snippy.shtml) to align each individual sequence with the reference genome. I then used `snippy-core` on the `*.aln` files from `snippy` which produced a new `*.aln` file, and a `*.full.aln`.
It is my understanding that the new `*.aln` file contains a core SNP alignment with only bases shared by all of my sequences, and that the `*.full.aln` file contains the core genome alignment with all bases of each sequence aligned to the reference genome - regardless of variation between sequences. Is my understanding correct? If not where am I going wrong?

Further, the program `snp-sites` uses both the new `*.aln` and `*.full.aln` file to produce a file which can be run through `FastTree` to produce a phylogenetic tree. Does this just process the files to give the phylogenetic distance between each of my sequences? I don't really understand what this step achieves at all...

**Tags:** phylogenetics, snp

---

## 1 answers

### Answer by username_1 on 2018-12-03. Score: 4

`snippy-core` is a tool that processes the `snippy_outdir_{1..n}` folders and produces the following files:

1. `core.aln` – a fasta format file that contains only the polymorphic sites (of {'A', 'C', 'T' and 'G'}) in your input set, whose length tends to decrease asymptotically as more isolates are added
2. `core.full.aln` – a fasta format file that contains all the core sites and base calls at any site where the reference has a site. The reference is not padded but the sequences mapped to it may be padded with gaps and 'N's to match the length of the reference. The alignment length does not change as more isolates are added.

`snippy{-core}` was written by Torsten Seemann et al. `snp-sites` was written by Andrew Page et al. `snp-sites` will reduce any alignment to the core polymorphic sites (columns) and will still output a fasta. Therefore the output of a `core.aln` processed through `snp-sites` should be the identical the input. All fasta alignments can then be processed downstream using your tree inference package of choice (e.g., `FastTree`, `IQ-Tree`, `MrBayes`, `BEAST` ...). If you want a distance matrix output from a fasta alignment, use something like `snp-dists`, also written by Torsten Seemann, or the `APE` package in `R`. Be sure to consider how gaps and Ns are treated during this step.

> **Comments:**
> **username_2**: Thank you so much for this. Was breaking my head for a long time. Its working now.  

---

