Skip to main content

Filters .gtf file of suspected HIV isoforms and confirms the isoform identities

Project description

HIV Isoform Checker

Overview

This package is a module in the APHIX pipeline. HIV_Isoform_Checker takes a .gtf file of preliminarily filtered HIV transcripts and filters them to include only correctly assigned transcripts using the following filters. It also calculates the usage counts and percentages for each isoform type, donor site, acceptor site, and pairwise splice site combination.

  • FILTER 1: only include class codes =, J, and m
  • FILTER 2: only include samples with end values >= min_end_bp and start values <= max_start_bp
  • FILTER 3: get rid of any samples with read errors/small gaps
  • FILTER 4: keep only correct Env samples
  • FILTER 5: keep only correct Nef samples(long samples added to possible_misassigned)
  • FILTER 6: keep only correct Rev samples(long samples added to possible_misassigned)
  • FILTER 7: keep only correct Tat samples(long samples added to possible_misassigned)
  • FILTER 8: keep only correct Vif samples
  • FILTER 9: keep only correct Vpr samples
  • FILTER 10: check possible_misassigned for fully spliced then partial splice compatibility (tat -> rev -> nef - > vif -> vpr -> unspliced_tat -> env)

Note: This code currently relies on a very specific setup of the gtf file to work properly. The note must be in the order designated in the []. transcript entry = ref genome, analysis_pathway, transcript, start, end, ".", "+", ".", [transcript id; gene id; gene_name; xloc; ref_gene_id; contained_in; cmp_ref; class_code; tss_id] exon entry = ref genome, analysis_pathway, exon, start, end, ".", "+", ".", [transcript id; gene id; exon number]


Installation

Quick Install

pip install HIV_Isoform_Checker

Manual Install

git clone https://github.com/JessicaA2019/HIV_Isoform_Checker.git 
cd HIV_Isoform_Checker
python setup.py install

Dependencies

Some dependencies currently do not install with Chimera_Buster. Please pip install the following dependencies:

  • mappy
  • regex
  • argparse

Testing

To test if the installation was successful run the following command with the test files provided:

HIV_Isoform_Checker HIC_test.gtf HIV_Isoform_Checker_test NL43.fa

Usage

HIV Isoform Checker [options] input_file_name output_file_prefix ref_file

Inputs

To run the pipeline the following input files are required:

Input Description
input_file_name Designates .gtf to be filtered. This is required.
output_file_prefix Designates output file prefix. This is required.
ref_file The location of the reference genome fasta file.

The following input files are optional:

Arguement Function
-h, --help Prints help message to terminal.
-g value, --gap value Sets gap tolerance. If a read has a gap longer than this value that is not associated with known splice sites, the read will be filtered out as a sequencing error. The default value is 15.
-a value, --startBP value Sets maximum starting bp in order to insure the presence of the first exon and by proxy a full read. Default is 700.
-z value, --endBP value Sets minimum ending bp in order to insure the presence of the last exon and by proxy a full read. Default is 9500.
-l value, --lengthFS value Sets maximum fully spliced transcript length. If a read is longer than this value, then it will be considered partial spliced. This is based off HIV-1 references without any major insertions or deletions. If your sequences have larger deletions (ex: deltaENV or deltaMA) or insertions (ex: multiple markers such as eGFP), this value may need to be adjusted. Default is 2500.
-n value, --NCE value When set to True, the output csv file will have y/n columns for the precence of NCEs. Default is False.

Outputs

The main output files created by the pipeline are:

Output Description
{output_file_prefix}.csv A csv containing the sample ID, cluster size, isoform ID, starting and ending base pair, gffcompare class code, exon boundaries, coverage length, size normalized counts, precence of NCEs (optional), and any additional notes for each sample.
{output_file_prefix}_altered.txt A list of all sample IDs with altered exons to fill in small gaps.
{output_file_prefix}_pass.txt A list of all sample IDs that passed all filters.
{output_file_prefix}_fail.txt A list of all sample IDs that failed one or more filters.
{output_file_prefix}_isoform_counts.csv A csv of the usage counts and percentages for each isoform type.
{output_file_prefix}_splice_site_usage.csv A csv of the the usage counts and percentages for each donor site, acceptor site, and pairwise splice site combination.
{output_file_prefix}_ref_coordinates.txt A list of splice site and CDS coordinates for given reference.
{output_file_prefix}.log A log of the arguments given to the script.

Help

For issues or bugs, please report them on the issues page.

License

MIT - Copyright (c) 2024 Jessica Lauren Albert

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

hiv_isoform_checker-1.1.8.3.tar.gz (27.3 kB view details)

Uploaded Source

Built Distribution

HIV_Isoform_Checker-1.1.8.3-py3-none-any.whl (17.1 kB view details)

Uploaded Python 3

File details

Details for the file hiv_isoform_checker-1.1.8.3.tar.gz.

File metadata

  • Download URL: hiv_isoform_checker-1.1.8.3.tar.gz
  • Upload date:
  • Size: 27.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.3

File hashes

Hashes for hiv_isoform_checker-1.1.8.3.tar.gz
Algorithm Hash digest
SHA256 97ce2480fe71ff225cae481c8343c60288dc97aa8a830c1be219bc3e69ecca4a
MD5 cec2b239889a61439efa428010a47888
BLAKE2b-256 f072b791975d4f9372c3a13ef61572661c2fa719aa082a4a3f067ff50dda9d05

See more details on using hashes here.

File details

Details for the file HIV_Isoform_Checker-1.1.8.3-py3-none-any.whl.

File metadata

File hashes

Hashes for HIV_Isoform_Checker-1.1.8.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1d3b6c3fe74679dd022388018955aea4be2a3e2af3e57526e3ce8b09a4ee8be0
MD5 5bb37284b1927c6aea8cd89a5cf69883
BLAKE2b-256 578f6506765865f6cfef42fcade724f0cfee317d9277662d462148e39bbb9c2a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page