deviaTE ist ein Python-Tool zur Analyse und Visualisierung mobiler genetischer Elementsequenzen.
Neues Befehlszeilenflag --tar
zum Sammeln von Ergebnissen und Diagrammen in TAR-Dateien. Nützlich, wenn viele TE-Sequenzen analysiert werden
Nanoporen-Testdaten und Unit-Tests hinzugefügt
Das Problem verketteter Lesepaare mit demselben Namen wurde behoben. Früher war hierfür die Ausführung von scripts/rename_reads.py
erforderlich, um die Namen eindeutig zu machen. Dies wird nun intern gehandhabt, sodass die Verwendung des Skripts nicht mehr notwendig ist.
Neues Befehlszeilen-Flag --no_viz
um die Visualisierung zu verhindern, wenn sie nicht benötigt wird
interne Effizienzsteigerungen
Die Verwendung gzippter Eingabedateien wurde korrigiert und neue Testfälle wurden hinzugefügt
Da die vorherige Python-Basis das Ende ihrer Lebensdauer erreichte, benötigte deviaTE ein Update. Dieses Update wurde recht umfangreich und wurde daher auf Version 2 verschoben:
Funktion wird nicht mehr unterstützt:
deviaTE benötigt Python >=3.10 und pip:
pip install deviaTE
usage: deviaTE [-h] [--input INPUT] [--preset {sr,map-ont,map-pb,map-hifi}] [--library LIBRARY] [--annotation ANNOTATION] [--min_align_len MIN_ALIGN_LEN] [--families [FAMILIES ...]] [--no_viz] [-v] [--rpm | --single_copy_genes [SINGLE_COPY_GENES ...]]
options:
-h, --help show this help message and exit
--input INPUT Input file(s) to be analysed. Can be *.fastq, *.fa, or directory of files. Optionally gzipped.
--preset {sr,map-ont,map-pb,map-hifi} Minimap2 mapping preset. (sr, map-ont, map-pb, map-hifi) [sr]
--library LIBRARY Path to reference library. Defaults to drosophila transposons from https://github.com/bergmanlab/drosophila-transposons
--annotation ANNOTATION Path to annotation (gff) of sequences in library. Defaults to drosophila TE annotation from https://github.com/bergmanlab/drosophila-transposons
--min_align_len MIN_ALIGN_LEN Minimum length of valid alignments
--families [FAMILIES ...] Which transposon families to analyse. Default: all sequences in library.
--no_viz Only analyse, but don't visualize the results
-v, --version Show version information and exit.
--rpm normalize all abundances by reads per million
--single_copy_genes [SINGLE_COPY_GENES ...] space-separated names of single-copy genes in reference to use for normalisation
DeviaTE ist ein Befehlszeilenprogramm, das die Vielfalt mobiler genetischer Elemente anhand von Sequenzierungsdaten analysiert und visualisiert, ohne dass ein zusammengesetztes Genom der Wirtsart erforderlich ist. Das einzige erforderliche Argument ist --input
. Hierzu werden Sequenzierungsdaten benötigt ( --input
einzelne Datei oder Verzeichnis von Dateien). Es kann mit kurzen und langen Lesevorgängen verwendet werden ( --preset
, Minimap2-Parametervoreinstellung für kurze Lesevorgänge [sr], Nanoporen-Lesevorgänge [map-ont] oder Pacbio [map-pb, map-hifi]). Es erfordert auch Konsenssequenzen für mobile genetische Elemente ( --library
, Fasta-Datei). Wenn keine Bibliothek angegeben ist, werden die Drosphila-Transposonsequenzen von https://github.com/bergmanlab/drosophila-transposons verwendet. Die zu analysierenden TEs werden mit --families
ausgewählt. Diese können mehrfach sein (durch Leerzeichen getrennt) oder wenn nicht angegeben, werden alle Referenzsequenzen in der Bibliothek verwendet.
Verfügbare Argumente werden mit -h
oder --help
aufgelistet.
Zum Testen steht ein Beispiel zur Verfügung. Die Sequenzen stammen vom Drosophila 12 Genomes Consortium et al. 2007. Evolution von Genen und Genomen in der Drosophila-Phylogenie. Natur . 450(7167):203-218.
Wir können den TE-Jockey (DMLINEJA) analysieren und eine Visualisierung erhalten mit:
deviaTE --input ../data/jockey_dmel.fastq --families FBte0000088
Dadurch wird eine Ausrichtungsdatei namens jockey_dmel.fastq.paf
erstellt, die Ausgabetabelle jockey_dmel.fastq.FBte0000088.deviate
mit Informationen zur Abdeckung und geschätzten Einfügungen (falls ausgewählt) sowie die Visualisierung jockey_dmel.fastq.FBte0000088.deviate.pdf
erstellt.
Das Handbuch und die Komplettlösung früherer Versionen finden Sie (unter diesem Github-Link).
Die Tabelle beginnt mit einigen Kopfzeilen, die mit # gekennzeichnet sind. Dieser Header enthält die geschätzte Anzahl der TE-Einfügungen (falls ausgewählt) und Spaltennamen. Jede Zeile entspricht einer Position der TE-Sequenz. Seit Version 2 meldet hq_cov
die Abdeckung hochwertiger Basen anstelle hochwertiger Kartierungen, da dies beispielsweise für Nanoporendaten interessanter ist.
Spalte | Beschreibung |
---|---|
TEfam | Name der analysierten TE-Familie |
sample_id | Name der Eingabedatei |
pos | Position in der Referenzsequenz |
refbase | Nukleotid in der Referenzsequenz an dieser Position |
ACGT | Zählungen jedes Nukleotids an dieser Position |
cov | Gesamtabdeckung an dieser Position |
hq_cov | Abdeckung nur hochwertiger Basen (>Q15) |
snp | Kennzeichen für Variantenposition |
delet | Anzahl der Lückenbeobachtungen |
Standardmäßig wird keine Normalisierung durchgeführt und die gemeldeten Zählungen sind Rohhäufigkeiten, die nicht für den Vergleich von TEs zwischen Proben geeignet sind. Daher werden zwei unterschiedliche Strategien implementiert: Normalisierung pro Million kartierter Lesevorgänge und Normalisierung durch Einzelkopie-Gene.
--rpm
.--library
verwendet werden. Fügen Sie dann --single_copy_genes GENE1 GENE2 GENE3 ...
hinzu, wobei GENE1 usw. die Header in der Bibliotheksdatei sind. Die geschätzte Kopienzahl pro haploidem Genom wird in den Header-Abschnitt der resultierenden Ausgabetabelle geschrieben. Wenn Sie TEs in Drosophila analysieren, ist die Angabe einer --library
oder --annotation
von Referenzsequenzen optional. Standardmäßig lädt deviaTE automatisch die TE-Bibliothek von https://github.com/bergmanlab/drosophila-transposons herunter und verwendet sie, wenn keine Bibliothek und Anmerkung angegeben sind.
Für die Einzelkopie-Gennormalisierung in Drosophila werden der Bibliothek automatisch fünf Gene hinzugefügt (Dmel_rpl32, Dmel_piwi, Dmel_Act5C, Dmel_RpII140 und Dmel_p53), die zur Normalisierung verwendet werden können:
--single_copy_genes Dmel_rpl32 Dmel_piwi ...
Sie können DeviaTE für Paired-End-Lesevorgänge verwenden, indem Sie diese im Einzellesemodus zuordnen.
Dies kann beispielsweise durch die Verwendung einer einzelnen verketteten Fastq-Datei erfolgen, die beide Lesepaare (read1 und read2) enthält. (Die Verwendung des Skripts scripts/rename_reads.py
um den Partnern eindeutige Namen zu geben, ist nicht mehr notwendig, dies wird seit 2.2.0 intern durchgeführt.)
Ein Papier, das deviaTE beschreibt, ist hier verfügbar: https://onlinelibrary.wiley.com/doi/10.1111/1755-0998.13030
@article{weilguny2019,
title = {{{DeviaTE}}: {{Assembly-free}} Analysis and Visualization of Mobile Genetic Element Composition},
author = {Weilguny, Lukas and Kofler, Robert},
year = {2019},
journal = {Molecular Ecology Resources},
volume = {19},
number = {5},
pages = {1346--1354},
doi = {10.1111/1755-0998.13030}
}
Wenn Sie Probleme finden, Fragen oder Ideen für weitere Verbesserungen haben, nutzen Sie bitte den Issue-Tracker in diesem Repository, danke!
deviaTE ist unter der GPLv3-Lizenz lizenziert
Der Code wird von Pytests abgedeckt. Um diese Installation auszuführen: pip install pytest pytest-cov
. Führen Sie dann Tests aus: cd tests; pytest --cov --cov-report html
. Um lokale Builds zu testen: hatch build && pip install dist/deviate-2.2.0-py3-none-any.whl --force-reinstall --no-deps