Welcome! This is the main website for the TRANSIT and TPP tools developed by the Ioerger lab at Texas A&M.
|
This page is for the original version of Transit, which is still being maintained and
distributed as described below. It can still be installed as the tnseq-transit package (most recently, v3.2.7) on PyPi using pip.
In 2023, we re-implemented Transit from scratch, which we are now distributing as TRANSIT2. The new version has a better, more integrated GUI. There are some minor differences in command-line arguments and file formats, but Transit2 still has the same methods for statistical analysis of TnSeq data as the original version of Transit. The new package on PyPi is called transit2. |
## Version 3.3.8 (2024-10-26) Minor changes: - added flags to pathway_enrichment, such as: -focusLFC pos|neg : to restrict pathway analysis of significant genes to only those with positive or negative LFCs -minLFC : to specify a minimum magnitude for LFCs (e.g. '-minLFC 1' means analyze genes with at least a 2-fold change, up or down) -qval : to change the threshold for significance from the default value of 0.05 -topk : to analyze the top K genes ranked by significance (Qval), regardless of cutoff ## Version 3.3.7 (2024-10-16) Minor changes: - updated manifest to include font file in PyPi package ## Version 3.3.6 (2024-10-14) Minor changes: - fixed a bug in TrackView that was caused by deprecated function in recent version of Python Image Library (PIL v10.0) ## Version 3.3.5 (2024-09-14) Minor changes: - allow wig file pathnames to have spaces in combined_wig and metadata files (e.g. for ANOVA and ZINB) - change default alg for BWA from 'mem' back to 'aln' (see documentation on TPP) ## Version 3.3.4 (2024-02-16) Minor changes: - some improvements to ttnfitness ## Version 3.3.3 (2023-11-26) Major changes: - changed the calculation of HMM confidence scores in HMM_conf.py to use 1D distributions over Mean insertion counts for each gene for each essentiality state - fixed bug in LOESS correction ## Version 3.3.2 (2023-10-29) Major changes: - added src/HMM_conf.py as a post-processing script for the HMM, to evaluate confidence of essentiality calls for each gene (see documentation on HMM) Minor changes: - improvements to documentation related to Quality Control ## Version 3.3.1 (2023-10-18) Minor changes: - changed HMM output filenames to *.sites.txt and *.genes.txt - added a page on File Formats to documentation - added a page on Example Scripts to documentation (for developers, to illustrate use of pytransit package) ## Version 3.3.0 (2023-08-03) Major changes: - added CRISPRi-DR method for identifying chemical-genetic interactions (CGI) in CRISPRi librariesTransit v3.2.8 (released July 22, 2023)
Small bug fixes in TPP:
Major changes:
Major changes:
Minor changes:
Major changes:
TRANSIT Version 2.3.4 2019-01-14
git clone https://github.com/mad-lab/transit/
python <PATH>/src/transit.pyNote: this command installs the source files locally in your directory, so you can run it from the command-line as above. Alternatively, you can use 'pip install' (see Documentation) to install a copy of transit in a global location on your system, like /usr/local/bin/transit. (transit becomes a command; you don't have to say 'python' before it) For detailed instructions, please see the documentation included with the source-code distribution or visit the following page:
If the annotation of your genome is in .gff (or .gff3) format, there is a command available in Transit to convert them to .prot_table format for use by all the analytical methods. Conversion of .gff files can also be done through the GUI (as a menu option).
> python transit.py convert gff2prot_table <.gff> <.prot_table>
http://saclab.tamu.edu/essentiality/transit/genomes/
Here is a Tn5 dataset from Salmonella (Langridge et al., 2009):
> python ../transit/src/tpp.py -bwa ../bwa-0.7.12/bwa -ref H37Rv.fna -reads1 sample667_R1.fastq -reads2 sample667_R2.fastq -output sample667
You can combine multiple wig files into one file (which can be viewed as a spreadsheet). In this example, I specify '-n TTR' at the end of the line for normalizing the insertion counts between datasets, but you could also use '-n nonorm' if you want to look at the raw counts. Make sure you are using the annotation (*.prot_table) corresponding to the genome that was used as the reference for creating the wig files (using TPP).
> python ../transit/src/transit.py export combined_wig Rv_1_H37RvRef.wig,Rv_2_H37RvRef.wig,Rv_3_H37RvRef.wig H37Rv.prot_table clinicals_combined_TTR.wig -n TTRIf you want to just normalize a specific dataset, there is a command for that...
> python src/transit.py normalize <input.wig> <output.wig> [-n TTR|betageom] > python src/transit.py normalize Rv_1_H37RvRef.wig Rv_1_H37RvRef_TTR.wig -n TTR > python src/transit.py normalize Rv_1_H37RvRef.wig Rv_1_H37RvRef_BG.wig -n betageomHere is an example of doing resampling from the command-line. It applies TTR normalization by default. The '-a' at the end is for adaptive, which gives approximately the same p-values but is much faster.
> python ../../transit/src/transit.py resampling /pacific/home/mdejesus/TRASH/invitro/Cara_WT.wig,/pacific/home/mdejesus/TRASH/invitro/CS_TraCS053.wig BBM_c3h-1_raw_templates.txt,BBM_c3h-2_raw_templates.txt H37Rv.prot_table resamp_invitro_BBM_c3h_TTR.dat -aHere is an example of evaluating genetic interactions among 2 strains (H37Rv wt and a knockout of SecA2) and 2 conditions (in_vitro vs in_vivo). There are 4 groups of wig files; each group is a comma-separated list of replicates. The arguments at the end specify truncation of TA sites in the N- and C-terminal 5% of each ORF.
> python ../transit/src/transit.py GI TnSeq_H37Rv_invitro_A.wig,TnSeq_H37Rv_invitro_B.wig,TnSeq_H37Rv_invitro_C.wig H37Rv_in_vivo_rep1.wig,H37Rv_in_vivo_rep2.wig,H37Rv_in_vivo_rep3.wig TnSeq_SecA2_invitro_A.wig,TnSeq_SecA2_invitro_BC.wig SecA2_in_vivo_rep1.wig,SecA2_in_vivo_rep2.wig,SecA2_in_vivo_rep3.wig H37Rv.prot_table SecA2_GI3.dat -iN 5 -iC 5Don't forget that you can get some help on command-line args by typing '--help', such as:
> python ../transit/src/tpp.py --help
usage: python PATH/src/tpp.py -bwa <EXECUTABLE_WITH_PATH> -ref <REF_SEQ> -reads1 <FASTQ_OR_FASTA_FILE> [-reads2 <FASTQ_OR_FASTA_FILE>] -output <BASE_FILENAME> [-maxreads <N>] [-mismatches <N>] [-flags "<STRING>"] [-tn5|-himar1] [-primer <seq>] [-barseq_catalog_in|_out <file>]
> python ../../transit/src/transit.py resampling <comma-separated .wig control files> <comma-separated .wig experimental files> <annotation .prot_table or GFF3> <output file> [Optional Arguments]
Optional Arguments:
-s <integer> := Number of samples. Default: -s 10000
-n <string> := Normalization method. Default: -n TTR
...
> python ../transit/src/transit.py GI --help
python /pacific/home/ioerger/transit/src/transit.py GI <comma-separated_.wig_control_files_for_condition_A> <comma-separated_.wig_control_files_for_condition_B> <comma-separated_.wig_experimental_files_condition_A> <comma-separated_.wig_experimental_files_condition_B> <annotation_.prot_table_or_GFF3> <output_file> [Optional Arguments]
Optional Arguments:
-s <integer> := Number of samples. Default: -s 10000
--rope <float> := Region of Practical Equivalence. Area around 0 (i.e. 0 +/- ROPE) that is NOT of interest. Can be thought of similar to the area of the null-hypothesis. Default: --rope 0.5
-n <string> := Normalization method. Default: -n TTR
-iz := Include rows with zero accross conditions.
-l := Perform LOESS Correction; Helps remove possible genomic position bias. Default: Turned Off.
-iN <float> := Ignore TAs occuring at given fraction of the N terminus. Default: -iN 0.0
-iC <float> := Ignore TAs occuring at given fraction of the C terminus. Default: -iC 0.0
python src/transit.py anova -n nonorm --wig anova-data/combined_wig_macrophages.dat --prot anova-data/H37RvBD1.prot_table --meta anova-data/samples_metadata.txt --ignore-conditions Unknown,Tcell -o output_nonorm.txtIf you want to perform pathway enrichment analysis on the output of resampling, you can use the following command. There are 2 annotation files provided for H37Rv (for Sanger roles, and for GO terms, in src/pytransit/data/). However, you can make your own in the same format for other strains/organisms. There are two methods for calculating enrichment: hypergeometric (Fisher's exact test), and GSEA. GSEA, as originally defined, is very slow. GSEA-Z and GSEA-CHI are faster approximations. (see documentation for references)
> python src/transit.py pathway_enrichment <resampling files> <annotation file> <output file> [-p .-S -M < GSEA, HYPE, Z, CHI >]
Papers on the Statistical Methods in Transit:
Biology papers from our group using TnSeq and Transit:
Zhang, L., Hendrickson, R.C., Meikle, V., Lefkowitz, E.J., Ioerger, T.R., and Niederweis, M. (2020). Comprehensive analysis of iron utilization by Mycobacterium tuberculosis. PLoS Pathogens, accepted.
Dragset, M., Ioerger, T.R., Loevenich, M., Haug, M., Sivakumar, N.,
Marstad, A., Cardona, P., Klinkenberg, G., Rubin, E.J., Steigedal, M.,
and Flo, T. (2019). Global assessment of Mycobacterium avium
subspecies hominissuis genetic requirement for growth and
virulence. mSystems,
4(6):e00402-19.
Dragset, M.S., Ioerger, T.R., Zhang, Y.J., Zekarias, Maerk, M., Ginbot, Z.,
Sacchettini, J.C., Flo, T.H., Rubin, E.J., Steigedal, M. (2019).
Genome-wide phenotypic profiling identifies and categorizes genes
required for mycobacterial low iron fitness.
Scientific Reports, 9(1):11394.
pubmed
Rego, H., Baranowski, C., Welch, M., Sham, L.-T., Eskandarian, H., Lim, H.,
Kieser, K., Wagner, J., McKinney, J., Fantner, G., Ioerger, T.R.,
Walker, S., Berhardt, T., and Rubin, E.J. (2018).
Maturing Mycobacterium smegmatis peptidoglycan requires non-canonical
crosslinks to maintain shape. eLife, e37516.
pubmed
Carey, A.F., Rock, J.M., Krieger, I.V., Chase, M.R., Fernandez-Suarez,
M., Gagneux, S., Sacchettini, J.C., Ioerger, T.R, and Fortune,
S.M. (2018). TnSeq of Mycobacterium tuberculosis clinical isolates
reveals strain-specific antibiotic liabilities.
PLOS Pathogens, 14(3):e1006939.
pubmed
Xu, W., DeJesus, M.A., Rucker, N., Engelhart, C., Wright, M.G., Healy, C.,
Lin, K., Wang, R., Park, S.W., Ioerger, T.R., Schnappinger, D., and
Ehrt, S. (2017).
Chemical genomic interaction profiling reveals determinants of
antibiotic susceptibility in Mycobacterium tuberculosis.
Antimicrobial Agents and Chemotherapy,
61(12):e01334-17.
pubmed
DeJesus, M.A., Gerrick, E.R., Xu, W., Park, S.W., Long, J.E., Boutte, C.C.,
Rubin, E.J., Schnappinger, D., Ehrt, S., Fortune, S.M., Sassetti, C.M.,
and Ioerger, T.R. (2017). Comprehensive essentiality analysis of the
Mycobacterium tuberculosis genome
via saturating transposon mutagenesis. mBio, 8(1):e02133-16.
pubmed
Korte, J., Alber, M., Trujullo, C.M., Syson, K. Koliwer-Brandl, H., Deenen, R.,
Köhrer, K., DeJesus, M.A., Hartman, T., Jacobs, W.R. Jr.,
Bornemann, S., Ioerger, T.R., Ehrt, S., Kalscheuer, R. (2016).
Trehalose-6-phosphate-mediated toxicity determines essentiality of OtsB2 in
Mycobacterium tuberculosis in vitro and in mice. PLOS Pathogens,
12(12):e1006043.
pubmed
Kieser, K.J., Baranowski, C., Chao, M.C., Long, J.E., Sassetti, C.M.,
Waldor, M.K., Sacchettini, J.C., Ioerger, T.R, and Rubin, E.J. (2015).
Peptidoglycan synthesis in Mycobacterium
tuberculosis is organized into networks with varying
drug susceptibility. PNAS,
112(42):13087-92.
pubmed
Zhang, Y.J., Reddy, M.C., Ioerger, T.R., Rothchild, A.C., Dartois, V.,
Schuster, B.M., Trauner, A., Wallis, D.E., Galaviz, S., Huttenhower, C.,
Saccettini, J.C., Behar, S.M., and Rubin, E.J. (2013).
Tryptophan biosynthesis protects mycobacteria from CD4 T cell-mediated killing.
Cell, 155(6):1296-308. pubmed
Zhang, Y.J., Ioerger, T.R., Huggenhower, C., Chen, X., Mohaideen, N.,
Long, J., Sassetti, C.M., Sacchettini, J.C. and Rubin, E.J. (2012).
Global assessment of genomic regions required for growth in Mycobacterium
tuberculosis. PLoS Pathogens, 8(9):e1002946.
pubmed
Griffin, J.E., Gawronski, J.D., DeJesus, M.A., Ioerger, T.R., Akerley, B.J.,
Sassetti, C.M. (2011). High-resolution phenotypic profiling defines genes
essential for mycobacterial survival and cholesterol catabolism. PLoS
Pathogens, 7(9):e1002251. pubmed
Long, J.E., DeJesus, M., Ward, D., Baker, R.E., Ioerger, T.R. and
Sassetti, C.M. (2015).
Identifying essential genes in Mycobacterium tuberculosis by global
phenotypic profiling. in:
Methods in Molecular Biology: Gene Essentiality,
(Long Jason Lu, ed.), vol. 1279.
Contact
Email questions to Tom Ioerger (ioerger@cs.tamu.edu).