Toolkit for analysis of .hyb format genomic sequence data from ribonomics experiments.
- This project contains multiple components:
The hybkit toolkit of command-line utilities for manipulating, analyzing, and plotting data contained within hyb-format files.
Analysis pipelines utilizing the toolkit for analysis of qCLASH hybrid sequence data.
The hybkit python API, an extendable documented codebase for creation of custom analyses of hyb-format data.
- Hybkit Toolkit:
hybkit includes command-line utilities for the manipulation of “.hyb” format data:
Read a “.hyb” file and check for errors
Analyze and set details for hyb records, such as segtypes
Filter a “.hyb” file to a specific subset of sequences
Perform a type analysis on a prepared “hyb” file
Perform a miRNA_count analysis on a prepared “hyb” file
Perform a summary analysis on a prepared “hyb” file
Perform a mirna_target analysis on a prepared “hyb” file
Perform a fold analysis on a prepared “hyb” file
These scripts are used on the command line with hyb-format files. For example, to filter a hyb file to contain only hybrids with a sequence identifier containing the string “kshv”:
$ hyb_filter -i my_hyb_file.hyb --filter seg_contains kshv
Further detail on the usage of each script is provided in the hybkit Toolkit section of hybkit’s ReadTheDocs.
Hybkit provides several example pipelines for analysis of “hyb” data using the utilities provided in the toolkit. These include:
Summarize the sequence and miRNA types in a hyb file
Analyze targets of a set of miRNA
Grouped Target Analysis
Analyze targets of a set of miRNA with grouped replicates
Analyze fold patterns of miRNA-containing hybrids
Fold Target Region Analysis
Perform fold analysis separated by targeted mRNA region
These pipelines provide analysis results in both tabular and graph form. As an illustration, the example summary analysis includes the return of the contained hybrid sequence types as both a csv table and as a pie chart:
Further detail on each provided pipeline can be found in the Example Pipelines section of hybkit’s ReadTheDocs.
- Hybkit API:
Hybkit provides a Python3 module with a documented API for interacting with records in “.hyb” files. This capability was inspired by the object interactions in the BioPython Project. The primary utility is provided by objects used to represent hyb records within hyb files. These records are assigned accessible attributes, and can be analyzed using builtin functions. For example, a workflow to print the identifiers of only sequences within a “.hyb” file that contain a miRNA can be performed as such:
import hybkit in_file = '/path/to/my_hyb_file.hyb' # Open a hyb file as a HybFile Object: with hybkit.HybFile.open(in_file, 'r') as hyb_file: # Return each line in a hyb file as a HybRecord object for hyb_record in hyb_file: # Analyze each record to assign segment types hyb_record.find_types() # If the record contains an miRNA type, print the record identifier. if hyb_record.has_property('segtype_contains', 'miRNA') print(hyb_record.id)
Further documentation on the hybkit API can be found in the hybkit API section of hybkit’s ReadTheDocs.
Hybkit is still in beta testing. Feedback and comments are welcome to email@example.com !
Hybkit requires Python 3.6+ and the use of the matplotlib package.
$ pip install hybkit
Acquisition of the package can also be performed by cloning the project’s Github repository:
$ git clone git://github.com/RenneLab/hybkit
Or by downloading the zipped package:
$ curl -OL https://github.com/dstrib/hybkit/archive/master.zip $ unzip master.zip
Followed by installation using python’s setuptools:
$ python setup.py install
Further documentation on hybkit usage can be found in hybkit’s ReadTheDocs.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.