TALgetter

From Jstacs
Jump to navigationJump to search

by Jan Grau, Annett Wolf, Maik Reschke, Ulla Bonas, Stefan Posch and Jens Boch.

TALgetter allows you to scan input DNA sequences for putative target sites of a given TAL (transcription activator like) effector as typically expressed by many Xanthomonas bacteria. TALgetter uses a local mixture model, which assumes that the nucleotide at each position of a putative target site may either be determined by the binding specificity of the RVD at that position (if interaction occurs at that position) or by the genomic context (if no interaction takes place). Binding specificities and importance of the individual RVDs has been trained on known TAL effector - target site pairs. Nucleotide preferences of the genomic context are learned from promoter sequences of A. thaliana and O. sativa.

We provide TALgetter as a public web-server, a web-application that can be installed in a local Galaxy server, and as a command line program.

Paper

If you use TALgetter, please cite

J. Grau, A. Wolf, M. Reschke, U. Bonas, S. Posch, and J. Boch. Computational predictions provide insights into the biology of TAL effector target sites. PLOS Computational Biology 9 (3), 2013.

TALgetter web-server

TALgetter is available as a public web-server at galaxy.informatik.uni-halle.de.

Download

TALgetter is implemented in Java using Jstacs. You can download the command line application as a Jar. In addition, we provide the Jar of the Galaxy web-application for installing it in your local Galaxy server.

TALgetter is part if Jstacs release 2.1. You find the TALgetter sources in package projects.tals.

Running the command line application

For running the command line application, Java v1.6 or later is required.

The arguments of the command line application have the following meaning:

name comment type

input Input sequences (The sequences to scan for TAL effector target sites, FastA) String
uo Upstream offset (Number of positions ignored at 5' end of each sequence, default = 0) Integer
do Downstream offset (Number of positions ignored at 3' end of each sequence, default = 0) Integer
rvd RVD sequence (Sequence of RVDs, seperated by '-', default = NI-HD-HD-NG-NN-NK-NK) String
model Model type (TALgetter is the default model that uses individual binding specificities for each RVD. TALgetter13 uses binding specificities that only depend on amino acid 13, i.e., the second amino acid of the repat.While TALgetter is recommended in most cases, the use of TALgetter13 may be beneficial if you search for target sites of TAL effector with many rare RVDs, for instance YG, HH, or S*., range={TALgetter, TALgetter13}, default = TALgetter) {TALgetter, TALgetter13}
pval PVals (Computation of p-Values, range={NONE, COARSE, FINE}, default = COARSE) {NONE, COARSE, FINE}
pthresh p-Value (Filter the reported hits by a maximum p-Value. A value of 0 or 1 switches off the filter., valid range = [0.0, 1.0], default = 1.0) Double
top Maximum number of target sites (Limits the total number of reported target sites in all input sequences, valid range = [1, 10000], default = 100) Integer
train Training data (The input data to use for training the model, annotated FastA, OPTIONAL) String
strand Both strands (Search both strands of the input sequence for target sites, default = false) [since v1.1, default value restores previous behaviour] Boolean

For instance, for scanning the FastA-file path/to/myPromoters.fa for the top 100 target sites of the TAL effector TalC, you start TALgetter with

java -jar TALgetter.jar input=path/to/myPromoters.fa rvd="NS-NG-NS-HD-NI-NG-NN-NG-HD-NI-NN-N*-NI-NN-HD-NG-NI-NN-N*-HD-NN-NG"

If you analyze large data set, for example all 1kb upstream sequences of rice, TALgetter may require a larger amount of memory than is the default in Java. You can increase the memory available to TALgetter my additional parameters to the Java virtual machine. If you want to start TALgetter with 512MB of memory initially, which may be increased to at most 1GB during the TALgetter execution, you call

java -Xms512M -Xmx1G -jar TALgetter.jar input=path/to/myPromoters.fa rvd="NS-NG-NS-HD-NI-NG-NN-NG-HD-NI-NN-N*-NI-NN-HD-NG-NI-NN-N*-HD-NN-NG"

Optionally, you can also train the TALgetter model using your custom training data before making predictions. Here, we provide an example file of input sequences. Basically, the input format is an annotated FastA-File of the form

>seq:<RVD-sequence>; weight: <w>
<DNA-sequence including position 0>
...

for instance:

>seq:NI-NG-NN-NN-NI-HD-HD-NN-NG-NN-NG; weight:0.0476190476190476
TATGGACCGTGT

The specification of the weight is optional.

To train the TALgetter model on path/to/trainingdata.fa before making predictions for target sites of TalC in path/to/myPromoters.fa, you call

java -jar TALgetter.jar train=path/to/trainingdata.fa input=path/to/myPromoters.fa rvd="NS-NG-NS-HD-NI-NG-NN-NG-HD-NI-NN-N*-NI-NN-HD-NG-NI-NN-N*-HD-NN-NG"

After the training, the estimated parameters are printed to STDERR and the predictions are printed to STDOUT, and you can redirect these to different files.

Large input data sets

Currently, TALgetter is restricted to at most 90 Mb due to memory requirements for computing empirical p-values. As an alternative, you can download a version of TALgetter with limited options (especially computation of p-values is disabled) for scanning large input data sets (e.g., complete genomes).

Installing the web-application

The command-line program behind the web-application is a Jar as well, so Java is required on the server running Galaxy. To install this command line program in Galaxy, copy it to the desired destination in the Galaxy tools directory.

The command line application writes its Galaxy tool definition file itself. If you are in the directory containing the command-line program for Galaxy, you can create the tool definition file by calling

java -jar TALgetterWeb.jar --create TALgetterWeb.xml

Afterwards, this directory contains the tool definition file TALgetterWeb.xml. Now you can register TALgetter in the Galaxy tool_conf.xml file. For details, see the Galaxy tutorial for adding new tools.