Extract terminal repeats from retrotransposons (LTRs) or DNA transposons (TIRs). Compose synthetic MITES from complete DNA transposons.
Project description
tSplit the TE-splitter
Extract terminal repeats from retrotransposons (LTRs) or DNA transposons (TIRs). Returns compontent segments of the element for use with transposon mapping tools.
Optionally, tsplit TIR can also compose synthetic MITES from complete DNA transposons.
Table of contents
Algorithm overview
tSplit attempts to identify terminal repeats in transposable elements by
first aligning each element to itself using blastn or nucmer, and then applying a set of
tuneable heuristics to select an alignment pair most likely to represent an LTR or TIR, as follows:
- Exclude all diagonal/self-matches
- If
tsplit LTR: Retain only alignment pairs on the same strand (tandem repeats) - If
tsplit TIR: Retain only alignment pairs on opposite strands (inverse repeats) - Retain pairs for which the 5' match begins within x bases of element start and whose 3' match ends within x bases of element end
- If multiple candidates remain select alignment pair with largest internal segment (i.e. closest to element ends)
Options and usage
Installing tSplit
Requirements:
Installation options:
# Install from PyPi:
pip install tsplit
# Clone and install latest dev version from this repository:
git clone https://github.com/Adamtaranto/tSplit.git && cd tSplit && pip install -e '.[dev]'
Example usage
tSplit can be run in two modes: tsplit LTR and tsplit TIR, for extracting long terminal repeats or terminal inverted repeats, respectively.
Options are the same for each.
tsplit TIR
For each element in TIR_element.fa split into internal and external (TIR) segments.
Split segments will be written to TIR_split_tsplit_output.fasta with suffix "_I" for internal or "_TIR" for external segments.
TIRs must be at least 10bp in length and share 80% identity and occur within 10bp of each end of the input element.
Additionally, synthetic MITEs will be constructed by concatenation of left and right TIRs, with internal segments excised.
tsplit TIR -i tests/data/TIR_element.fa -p TIR_split --makemites --keeptemp
# Equivalet to defaults
tsplit TIR -i tests/data/TIR_element.fa -p TIR_split --maxdist 10 --minid 80.0 --minterm 10 --method blastn --splitmode split --makemites --keeptemp
Output: TIR_split_tsplit_output.fasta
tsplit LTR
For each element in LTR_retrotransposon.fa split into internal and external segments.
Split segments will be written to LTR_split_tsplit_output.fasta with suffix "_I" for internal or "_LTR" for external segments.
LTRs must be at least 10bp in length and share 80% identity and occur within 10bp of each end of the input element.
tsplit LTR -i tests/data/LTR_retrotransposon.fa -p LTR_split
Output: LTR_split_tsplit_output.fasta
License
Software provided under MIT license.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tsplit-0.1.4.tar.gz.
File metadata
- Download URL: tsplit-0.1.4.tar.gz
- Upload date:
- Size: 30.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9525a96eadb15f36697b2b97c83340716019c5c10ed577c2e58966d1dcec64f9
|
|
| MD5 |
b77c7bc58f96288b4861499cf0cf4a16
|
|
| BLAKE2b-256 |
f976494b1d7c9db44272a2eeebbb28aac2a9df02692e59256c07ad7c74f7a25f
|
Provenance
The following attestation bundles were made for tsplit-0.1.4.tar.gz:
Publisher:
publish.yml on Adamtaranto/tSplit
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
tsplit-0.1.4.tar.gz -
Subject digest:
9525a96eadb15f36697b2b97c83340716019c5c10ed577c2e58966d1dcec64f9 - Sigstore transparency entry: 192765414
- Sigstore integration time:
-
Permalink:
Adamtaranto/tSplit@c2ee4f20616421cad5c3199d459470331380cbd6 -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/Adamtaranto
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@c2ee4f20616421cad5c3199d459470331380cbd6 -
Trigger Event:
release
-
Statement type:
File details
Details for the file tsplit-0.1.4-py3-none-any.whl.
File metadata
- Download URL: tsplit-0.1.4-py3-none-any.whl
- Upload date:
- Size: 19.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
692b9f3a3f645322ab2f1c2065e52a636082b075acd56f8fb9937356ae2b14ef
|
|
| MD5 |
d5afbec3618af38c337c9cf3ddef4d9f
|
|
| BLAKE2b-256 |
864b75625d756c66949ee5822fbb23cd729eb62450550531571ec1da33ce258d
|
Provenance
The following attestation bundles were made for tsplit-0.1.4-py3-none-any.whl:
Publisher:
publish.yml on Adamtaranto/tSplit
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
tsplit-0.1.4-py3-none-any.whl -
Subject digest:
692b9f3a3f645322ab2f1c2065e52a636082b075acd56f8fb9937356ae2b14ef - Sigstore transparency entry: 192765418
- Sigstore integration time:
-
Permalink:
Adamtaranto/tSplit@c2ee4f20616421cad5c3199d459470331380cbd6 -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/Adamtaranto
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@c2ee4f20616421cad5c3199d459470331380cbd6 -
Trigger Event:
release
-
Statement type: