Skip to content

taiwaness/GFF3toolkit

 
 

Repository files navigation

GFF3toolkit - Python programs for processing GFF3 files

Background

The GFF3 format (Generic Feature Format Version 3) is one of the standard formats to describe and represent genomic features. It is an incredibly flexible, 9-column format, which is easily manipulated by biologists. This flexibility, however, makes it very easy to break the format. We have developed the GFF3toolkit to help identify common problems with GFF3 files; sort GFF3 files (which can aid in using down-stream processing programs and custom parsing); merge two GFF3 files into a single, non-redundant GFF3 file; and generate FASTA files from a GFF3 file for many use cases (e.g. feature types beyond mRNA).

Frequently Asked Questions/FAQ

Detect GFF3 format errors (back)

  • bin/gff-QC.py - Detection of GFF format errors (~50 types of errors).
    • gff-QC.py readme
    • gff-QC.py full documentation
    • Quick start: python2.7 GFF3toolkit/bin/gff-QC.py -g GFF3toolkit/example_file/example.gff3 -f GFF3toolkit/example_file/reference.fa -o test2.txt
    • Please refer to lib/ERROR/ERROR.py to see the full list of Error codes and the corresponding Error tags.

Merge two GFF3 files (back)

  • bin/gff3-merge.py - Merge two GFF3 files
    • gff3-merge.py readme
    • gff3-merge.py full documentation
    • Quick start:
      • Merge the two file with auto-assignment of replace tags (default) python2.7 GFF3toolkit/bin/gff3-merge.py -g1 GFF3toolkit/example_file/new_models.gff3 -g2 GFF3toolkit/example_file/reference.gff3 -f GFF3toolkit/example_file/reference.fa -og merged.gff -r merged_report.txt
      • If your gff files have assigned proper replace tags at column 9 (Format: replace=[Transcript ID]), you could merge the two gff files wihtout auto-assignment of tags. python2.7 GFF3toolkit/bin/gff3-merge.py -g1 GFF3toolkit/example_file/new_models.gff3 -g2 GFF3toolkit/example_file/reference.gff3 -f GFF3toolkit/example_file/reference.fa -og merged.gff -r merged_report.txt -noAuto

Sort a GFF3 file (back)

  • bin/gff3_sort.py - Sort a GFF3 file according to the order of Scaffold, coordinates on a Scaffold, and parent-child feature relationships
    • gff3_sort.py readme
    • Quick start: python2.7 GFF3toolkit/bin/gff3_sort.py -g GFF3toolkit/example_file/example.gff3 -og example-sorted.gff3

Generate biological sequences from a GFF3 file (back)

  • bin/gff3_to_fasta.py - extract biological sequences (such as spliced transcripts, cds, or peptides) from specific regions of genome based on a GFF3 file
    • gff3_to_fasta.py readme
    • Quick start: python2.7 GFF3toolkit/bin/gff3_to_fasta.py -g GFF3toolkit/example_file/example.gff3 -f GFF3toolkit/example_file/reference.fa -st all -d simple -o test_sequences

Example Files (back)

  • example_file/
    • Example files for testing

Internal Dependencies (back)

About

Python programs for processing GFF3 files

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 94.3%
  • Perl 5.7%