Jump to content

BIRCH/New Applications under consideration

From Bioinformatics.org Wiki

General/Collections

[edit]

Protein

[edit]

Genome Assembly

[edit]

Pre-processing

[edit]

Quality control and assessment

[edit]

Trimming, elimination of small fragments etc.

[edit]

Some programs of this type also merge reads from both pairs of a fragment.

  • AdaptorRemovalv2
  • BBMap - short read aligner, 100% Java. A bunch of nice tools for short read overlapping, trimming QC etc.

Error correction

[edit]

Web site with links to error correction tools - https://omictools.com/error-correction-category

Removel of non-paired reads from paired files

[edit]

Sometimes one read of a pair is lost when trimming or quality correction are done. For example, if after trimming, a one of the two reads was too short, it might be deleted from one file, but its mate not deleted from the other. Some assembly programs fail if even a single unpaired read is found (eg. rnaspades).

Since read files tend to have 4 lines per read, a crude way to detect the number of reads in a file is 'wc -l'. The number of reads is the number of lines divided by 4. There should be exactly the same number of reads in the left and right read files for a read pair.

I have tried several programs for removing non-paired reads, so far without success:

  • fastqCombinePairedEnd.py - For large files, crashes
    Segmentation fault (core dumped)
  • fastq-pair - divides reads between paired and singleton reads, but sometimes misses unpaired reads.
  • remove_unpaired.pl - doesn't appear to work, and no documentation

Assemblers

[edit]

References

Assembly viewers and Quality Assessment

[edit]

Post processing

[edit]

Genome annotation and visualization

[edit]

Ekblom R, Wolf JBW (2014) A field guide to whole-genome sequencing, assembly and annotation http://onlinelibrary.wiley.com/doi/10.1111/eva.12178/full

  • DIAMOND - DIAMOND is a sequence aligner for protein and translated DNA searches and functions as a drop-in replacement for the NCBI BLAST software tools. It is suitable for protein-protein search as well as DNA-protein search on short reads and longer sequences including contigs and assemblies, providing a speedup of BLAST ranging up to x20,000.

Annotation formats and software

[edit]

Annotation

[edit]

Pipelines

[edit]

RNA annotation

[edit]

Visualization

[edit]
  • awesome-genome-visualization - web site with examples and links to a lot of great visualization programs.
  • Synvisio - Synteny visualization tool. Uses synteny data calculated by McScanX, a popular synteny toolkit.
  • IGB - Integrated Genome Browser (presented at PAG 2016)
    • Pluses: great look and feel; designed to easily add Java plugins; has a "Just In Time" download architecture, so only the parts of the genome you are viewing, and relevant metadata, get downloaded as you need them. Also uses caching to speed things up.
    • Minuses: has to use genomes that have been converted for IGB
  • IBS: An Illustrator for the presentation and illustration of biological data - This looks really great, and is written in Java, so it's platform independent. Can work directly with Uniprot annotations, and they claim to be working on NCBI GenBank and other formats. Looking at the user manual, it seems to be more of a drawing program for making gene diagrams, rather than a more conventional genome viewer. The manual, doesn't say anything about importing an annotated genome, at first look.
    Bioinformatics (2015) 31 (20): 3359-3361. doi: 10.1093/bioinformatics/btv362
  • Integrative Genomics Viewer - Broad Institute http://www.broadinstitute.org/igv
  • Jbrowse Genome Viewer - http://jbrowse.org
  • Apollo - a genome editing plugin for Jbrowse http://genomearchitect.org/
  • SyMap - http://www.agcol.arizona.edu/software/symap/index.html A very sophisticated genome viewer
    Written in Java for Mac and Linux. One caveat - uses a MySQL database, that must be installed separately for anything other than the demos. Definitely worth trying.
    • chromosome x chromosome dot plots
    • circular synteny maps
    • 3D comparison plots
    • 2D chromosome comparisons
    • others
  • Circlator - circularize genome assemblies http://www.sanger.ac.uk/science/tools/circlator
  • SyMAP - whole genome dot plots, synteny visualization, 2D and 3D views, and written in Java. Could be used for Cytogenetics. http://www.agcol.arizona.edu/software/symap/v4.0/UserGuide.html

PathVisioRPC - An XMLRPC interface for PathVisio. In other words, an API for data visualization. Bindings for many languages, including Python, Java and R. http://www.biomedcentral.com/1471-2105/16/267?utm_campaign=BMC24047B&utm_medium=BMCemail&utm_source=Teradata

misFinder - identify mis-assemblies in an unbiased manner using reference and paired-end reads http://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-015-0818-3

Comparative Genomics

[edit]

Dotplots

[edit]
  • Oxford Dot Plots - This looks like a really comprehensive modern package. Uses Python and snakemake.
  • MUMmer has programs for genomic dotplots
  • lastal - add -P option to run in parallel
  • How much of LAST can we automate through BioLegato? Do we need a BioLegato for comparative genomics?
  • It might be easy to get Last to create genomic dot-plots showing ONLY repetitive sequences compared between chromosomes. Simply mask the input sequences for all sequences OTHER than what you want to look at, and then run Last (or DXHOM, for that matter). This could create maps of particular transposons or other repetitve elements scattered throughout the genome.
    It might be very useful when studying genome evolution.
  • dnanexus/Dot - Interactive dot-plot tool, introduced at PAG in 2018. https://github.com/dnanexus/dot Written in Javascript? Can we run Javascript outside of a browser?
  • Yass - YASS :: genomic similarity search tool http://bioinfo.lifl.fr/yass/index.php
    • They show dotplots in their paper, but don't actually have a program for dotplots.
  • DONE Last - LAST: Genome-Scale Sequence Comparison http://last.cbrc.jp/doc/last.html
    • Plus
      • fast
      • multiple chromosomes or genomes in a single plot
    • Minus
      • no coordinates on dotplots
  • Gepard: a rapid and sensitive tool for creating dotplots on genome scale. Java, appears to be quick. Nice feature to calculate plots by functional anotation. One big downside - no way to launch gepard gui with sequences specified on the command line. You can run at the command line, but it will just generate a static bitmap as output. Update: Actually, there are a lot of problems.
    • Only distributed on a not very user-friendly git repo
    • documentation is not up to date
    • doesn't provide launch scripts for command line usage. Despite what is discussed on the Git, I have never been able to get gepard to run as a command line application.
    • The author really doesn't seem to have any interest in human beings being able to download and use this program.
    • only does pairwise comparisons, not multiple comparisons
  • MatrixPlot - http://www.cbs.dtu.dk/services/MatrixPlot/

Comparison viewers

[edit]

Genome Re-sequencing and genotyping

[edit]

GATK - Genome Analysis Toolkit (MIT Broad Institute)

Gene Expression/Transcriptome Analysis

[edit]

Pathway analysis

[edit]

RNA programs

[edit]

Multiple sequence alignment

[edit]

Feature annotation

[edit]
  • We need a program that can map GenBank features to a multiple sequence alignment.

Nice try, but no cigar:

  • pfaat - No way to put in your own annotations, and automated annotation from Uniprot is extremely limited. No good for DNA annotation
  • aline - This program seems initially promising, but has fatal flaws. Perl scripts using tck/tl for GUI. Not supported since its release in 2008. Some ability to put in annotations, but its the details that make this not worth using.
    • There is sequence numbering for each component of the alignment
    • no numbering with respect to the alignment
    • The GUI is noticeably slow.
    • No documentation at all, and the paper is too brief to be useful. In fact, when the program launches from the command line, you get a message saying "Documentation would be nice." Nuff said. This thing is hard enough to figure out as it is without documentation.
    • The paradigm is 1. choose a tool 2. select a part of the alignment. One big problem is that you can't select parts of the alignment by dragging past the contents of the current window. It won't autoscroll as you move. Neither can you select parts of the alignment by SHIFT, begin-select, move, end-select. This means that there is no way to annotate features such as introns or exons that span beyond the current window.
    • Some tools just don't seem to work at all.
    • You'd like to be able to select existing objects and modify them, but this capability is frustratingly limited.

Pattern recognition and detection

[edit]

Genome Editing/CRISPR

[edit]

Cloning

[edit]

Basic Restriction Enzyme Tasks in BioLegato

[edit]
  • seq -- cut --> frags
  • seq1, seq2 -- ligate --> frags
  • could also do ligation in bldna, just by creating a new sequecnce out of 2 or more selected sequences
  • frags -- map --> image
  • frags + feature location --> possible REs for cloning the feature

Can we implement features that persist from step to step? Look at the various file formats eg. SFF. Some of these may be a way to preserve feature annotation without creating a GenBank flat file.

Examples of tasks:

  • clone a PCR product
  • move a cassette from one vector to another
  • clone a synthetic dsDNS into 1 or 2 restriction sites
  • delete a fragment.

BioPython contains a package called Restriction. This package appears to have classes for Restriction enzymes, which can work with Seq objects do do many of these tasks.

If we use the Restriction class, it might be useful to create new classes as extensions of existing classes. That way, the new classes could be contributed to BioPython.

It might be tempting recognize that much of the above could be accomplished by running BACHREST and DIGEST from wrappers. However, we have to concede that while these are well-written programs, they are not worth the effort to support as Pascal code. The better way is to leverage the BioPython code for what it can do, and adapt the logic from BACHREST and DIGEST to handle the downstream fragment tasks.

Packages for cloning tasks

[edit]
Package Comments Platforms
Serial Cloner
http://serialbasics.free.fr/Home/Home.html
Looks like a nice GUI. Not as thoroughly tested on Linux as Mac,Windows.

Discussions for previous versions suggest that critical cloning functions may not work on Linux. See http://serialbasics.free.fr/forum/

Confirmed. It is impossible to select restriction sites or features in the Construct menu. Without these, no cloning is possible. The current version 2.6.1 came out in 2013, and there seems to be no commitment to fix these long-standing bugs. Serial Cloner on Linux is therefore considered useless, unless they decide to fix these bugs.
Also a problem is installation. SC is a bit fussy about where you launch it. The binary needs to be in the same directory as the rest of the package. Symbolic links don't work for launching it because it can't find its libraries. There is also no mechanism for specifying an input file on the command line.
Mac, Windows, Linux
UGENE
http://ugene.unipro.ru
Uses a lot of existing software (eg. MUSCLE, BLAST, PRIMER3) with its own interface. Has some NGS stuff in it (eg. Velvet). Mac,Windows,Linux
ApE - A Plasmid Editor
http://biologylabs.utah.edu/jorgensen/wayned/ape/
Appears to be compiled, not a Java application. The last Linux version was released in 2009. OSX,Windows. Adaptable to Linux?

Genetic Mapping/Molecular Markers

[edit]

blqtl

[edit]

It may be time to have a BioLegato application specific for QTLs. What would this look like?

Microsatellites/SSRs

[edit]

SNP/GWAS

[edit]

blmarker

[edit]
  • need program to evaluate reproducibility of 2 or more replicates for a set of primers

Genetic Mapping

[edit]

Packages to look at:

  • SeSAM: SeSAM: software for automatic construction of order-robust linkage maps
  • MadMapper - Python scripts from the Michaelmore lab
    • Quality control of genetic markers
    • Group analysis
    • linear order of markers on linkage groups
  • QGene - Java program with GUI for QTL mapping. Runs under Windows but we'd expect it should be platform-independent.
  • MapDisto - Genetic analysis. Runs on Windows and Mac. It looks like it's mainly an Excell plugin, so maybe it can be gotten to run with LibreOffice Calc.
  • xQTL - Runs in Java, has a web interfact.
    • seamless data management for genotypes, molecular data and phenotypes
    • analytical pipelines and tools
    • high throughput cluster computing
  • MSTMap - MSTMap is a software tool that is capable of constructing genetic linkage maps efficiently and accurately. It can handle various mapping populations including BC1, DH, Hap, and RIL, among others. Source code available.


The Laboratory of Statistical Genomics at Rockefeller University maintains what seems to be an up to date list of genetic analysis software.

Phylogeny

[edit]

Maybe its time to phase out Phylip.

[edit]
  • v3.69 was released in 2009, and there is no evidence of further support
  • short ID problem
  • limited types of metadata that can be in files.
  • Some packages give nice integrated graphical tools
  • not really designed for comparative genomics

Under consideration

[edit]
  • Ktreedist - calculates the minimum branch length distance (or K tree score) from one phylogenetic tree to another.
  • Programs to remove gaps
    • MEME - remove-alignment-gaps
    • MaxAlign.pl - This program doesn't remove gaps per se. Rather, it removes sequences that lower the alignment score by having too many gaps. The remaining sequences would be used for phylogeny. [3]
  • IQ-TREE: a fast and effective stochastic algorithm for estimating maximum-likelihood phylogenies.Mol Biol Evol. 2015 Jan;32(1):268-74. doi: 10.1093/molbev/msu300. Epub 2014 Nov 3.[4]
  • ML
  • BEAST
  • TNT
  • RAxML
  • PAML - Phylogenetic Analysis by Maximum Likelihood - A Unix style package that looks like it would be easily automatable under BioLegato. Also has its own GUI. http://abacus.gene.ucl.ac.uk/software/paml.html
    • comparison and tests of trees
    • estimation of parameters
    • likelihood ratio tests of hypotheses
    • estimation of divergence times
    • reconstruction of ancestral sequences
    • estimation of synonymous and non-synonymous substitution rates
  • Mol. Evol., Phylogenetics and Epidemiology - http://tree.bio.ed.ac.uk/software/ - software for mol. evol., phylogenetics and epidemiology. Looks polished, many things in Java. Includes programs for Bayesean phylogeny, viewing and darwing trees.
  • SNPhylo - Phylogenetic analysis using SNP data http://www.biomedcentral.com/1471-2164/15/162 -looks great, but could be complicated to integrate, especially since it requires some specific R packages.
  • Is there a program out there that will do some sort of sliding window plot of sequence conservation in a multiple alignment? This would be particuarly useful in phylogenetic analysis. Ideally, the sliding window would give a bit score for information content. WebLogo almost does this, in that you get a bit score at each position.
    • You could break up an alignment into regions to look at reticulate evolution
    • Discover which are the most informative and least informative regions
  • TreeLink - data integration, clustering and visualization of phylogenetic trees; http://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-015-0860-1

Phylogenomics

[edit]
  • HybPhyloMaker: HybPhyloMaker: Target Enrichment Data Analysis From Raw Reads to Species Trees https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5768271/ - Incredibly, written in BASH. This pipeline automates steps from multiple alignment to genome trees. Probably worth a look, even if only for the references.

Probably not

[edit]
  • MEGA - has a bad reputation of being a black box with little ability to adjust parameters. "Like a software corset"
  • PAUP - kind of up in the air, but the stated goal is to make a Windows and Mac commercial version. Can't be redistributed. The current web site (May 17) is still equivocal about what will actually be available.