Bio::DB::HTS::Tabix3pm
Object oriented access to the underlying tbx c methods
Usage
use feature qw( say );use Bio::DB::HTS::Tabix;my $tabix = Bio::DB::HTS::Tabix->new( filename => "gerp_plus_plus_31July2014.gz" );say $tabix->header;my $iter = $tabix->query("1:4000005-4000009");while ( my $n = $iter->next ) {say $n;}$tabix->close;
Overview
A high level object oriented interface to the htslib tabix (tbx.h) api. Currently it only supports retrieving regions from a tabixed file, because that's all I needed it for.
Attributes
- "filename"
-
The gzipped file you want to query. Must have a filename.tbi (the index is not created automatically)
Methods
- "header"
-
Returns all the header lines as a single scalar from the tabixed file
- "query"
-
Takes a single region like: '1:4000005-4000009' or '12:5000000'. The coordinate format is 0 or 1-based for start and stop positions depending on how the Tabix index file was created - by default this is 1.
The index for remote files will be downloaded to the system temporary directory by default. Set use_tmp_dir to 0 to download to the current working directory instead.
Here are some examples showing Tabix.
use Bio::DB::HTS::Tabix;my $tabix = Bio::DB::HTS::Tabix->new(filename => $file, use_tmp_dir => 1);# Calling region 1$iter = $tabix->query("1");printf("Calling region 1\n" );while(my $l = $iter->next) {print $l, "\n";}Gives:1 4000000 4000000 -0.9721 4000001 4000001 -0.1531 4000002 4000002 -2.151 4000003 4000003 -1.171 4000003 4000006 -3.61 4000006 4000007 -6.71 4000007 4000009 -7.9#Calling a range$iter = $tabix->query("1:4000003-4000006");gives1 4000003 4000003 -1.171 4000003 4000006 -3.61 4000006 4000007 -6.7#Calling region 1:4000003 to end of region 1$iter = $tabix->query("1:4000003");gives1 4000003 4000003 -1.171 4000003 4000006 -3.61 4000006 4000007 -6.71 4000007 4000009 -7.9#Calling single location 1:4000002$iter = $tabix->query("1:4000002-4000002");gives1 4000002 4000002 -2.15Returns a Bio::DB::HTS::Tabix::Iterator for the specified region
- "seqnames"
-
Returns an array ref of chromosomes that are in the indexed file
Releases
3 releases since Debian 11 (Bullseye); the text changed 2 times.