https://github.com/adamtaranto/te-insertion-scanner

Scan whole genome alignments for signatures of transposon insertion.

https://github.com/adamtaranto/te-insertion-scanner

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.9%) to scientific vocabulary
Last synced: 11 months ago · JSON representation

Repository

Scan whole genome alignments for signatures of transposon insertion.

Basic Info
  • Host: GitHub
  • Owner: Adamtaranto
  • License: mit
  • Language: Python
  • Default Branch: main
  • Size: 37.1 KB
Statistics
  • Stars: 2
  • Watchers: 3
  • Forks: 1
  • Open Issues: 0
  • Releases: 1
Created over 9 years ago · Last pushed over 1 year ago
Metadata Files
Readme License

README.md

Tinscan: TE-Insertion-Scanner

Scan whole genome alignments for transposon insertion signatures.

Table of contents

Algorithm overview

  1. Perform gapped and chained whole genome alignment of query genome B onto target genome A.
  2. Where two aligned segments are contiguous in B (or separated by no more than --qGap), and
  3. Separated by an insertion in the range --minInsert:--maxInsert in A, and
  4. At least one flanking alignment in A satisfies the threshold --minIdent, and differs from its mate by no more than --maxIdentDiff %
  5. Log flanks and candidate insertion.
  6. Attempt to infer TSDs from the internal overlap of flanking alignments in B genome.

Options and usage

Installing Tinscan

Requirements: * LASTZ genome alignment tool from the Miller Lab, Penn State. * Biopython

You can set up a conda environment with the required dependencies using the YAML files in this repo:

For ARM64 (Apple Silicon Macs) create a virtual intel env.

```bash

For ARM64 Macs only

conda env create -f env_osx64.yml conda activate tinscan-osx64 ```

For all other operating systems use environment.yml

bash conda env create -f environment.yml conda activate tinscan

With the conda env active you can now install tinscan.

1) Install from PyPi. bash pip install tinscan

2) For the latest development version, clone and install from this repository.

bash git clone https://github.com/Adamtaranto/TE-insertion-scanner.git && cd TE-insertion-scanner && pip install -e ".[tests]"

Example usage

Find insertion events in genome A (target) relative to genome B (query).

Prepare Input Genomes

Split A and B genomes into two directories containing one scaffold per file. Check that sequence names are unique within genomes.

```bash tinscan-prep --adir data/Atargetsplit --bdir data/Bquerysplit\ -A data/Atargetgenome.fasta -B data/Bquerygenome.fasta

```

Output: data/Atargetsplit/.fa data/Bquerysplit/.fa

Align Genomes

Align each scaffold from genome B onto each genome A scaffold. Report alignments with >= 60% identity and length >= 100bp.

```bash tinscan-align --adir data/Atargetsplit --bdir data/Bquerysplit \ --outdir AInserts --outfile AInsertsvsB.tab \ --minIdt 60 --minLen 100 --hspthresh 3000

```

Output: AInserts/AInsertsvsB.tab

Note: Alignment tasks can be limited to a specified set of pairwise comparisons where appropriate (i.e. when homologous chromosome pairs are known between assemblies) using the option --pairs.

Comparisons are specified with a tab-delimited text file, where column 1 contains sequence names from genome A, and column 2 contains sequences from genome B.

In the example Chromosome_pairs.txt, Chr A2 has been assembled as two scaffolds (B2, B3) in genome B.

```

Chromosome_pairs.txt

A1 B1 A2 B2 A2 B3 A3 B4 ```

Find Insertions

Scan alignments for insertion events and report as GFF annotation of Genome A

```bash tinscan-find --infile AInserts/AInsertsvsB.tab \ --outdir AInserts --gffOut AInsertsvsBl100id80.gff3 \ --maxInsert 50000 --minIdent 80 --maxIdentDiff 20

```

Output: AInserts/AInsertsvsBl100id80.gff3

License

Software provided under MIT license.

Owner

  • Name: Adam Taranto
  • Login: Adamtaranto
  • Kind: user
  • Location: Melbourne, Australia
  • Company: The University of Melbourne

GitHub Events

Total
  • Create event: 1
  • Issues event: 1
  • Release event: 1
  • Watch event: 1
  • Delete event: 1
  • Push event: 2
Last Year
  • Create event: 1
  • Issues event: 1
  • Release event: 1
  • Watch event: 1
  • Delete event: 1
  • Push event: 2

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 28
  • Total Committers: 1
  • Avg Commits per committer: 28.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 11
  • Committers: 1
  • Avg Commits per committer: 11.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Adam Taranto a****o@g****m 28

Issues and Pull Requests

Last synced: 11 months ago

All Time
  • Total issues: 1
  • Total pull requests: 0
  • Average time to close issues: about 6 years
  • Average time to close pull requests: N/A
  • Total issue authors: 1
  • Total pull request authors: 0
  • Average comments per issue: 1.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • pmhenry (1)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 11 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 3
  • Total maintainers: 1
pypi.org: tinscan

Find alignment signatures characteristic of transposon insertion sites.

  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 11 Last month
Rankings
Dependent packages count: 10.0%
Dependent repos count: 21.8%
Forks count: 22.6%
Average: 31.1%
Stargazers count: 31.9%
Downloads: 69.0%
Maintainers (1)
Last synced: 11 months ago

Dependencies

.github/workflows/publish.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • pypa/gh-action-pypi-publish release/v1 composite
.github/workflows/pytest.yml actions
  • actions/checkout v4 composite
  • actions/setup-python v5 composite
.github/workflows/ruff.yml actions
  • actions/checkout v4 composite
  • chartboost/ruff-action v1 composite
  • stefanzweifel/git-auto-commit-action v5 composite
environment.yml pypi
  • biopython *
  • hatch *
  • pytest *
pyproject.toml pypi
  • biopython >=1.70