NAME
Ace::Sequence::FeatureList - Lightweight Access to Features
SYNOPSIS
# get a megabase from the middle of chromosome I
$seq = Ace::Sequence->new(-name => 'CHROMOSOME_I,
-db => $db,
-offset => 3_000_000,
-length => 1_000_000);
# find out what's there
$list = $seq->feature_list;
# Scalar context: count all the features
$feature_count = $list->types;
# Array context: list all the feature types
@feature_types = $list->types;
# Scalar context, 1 argument. Count this type
$gene_cnt = $list->types('Predicted_gene');
print "There are $gene_cnt genes here.\n";
# Array context, 1 argument. Get list of subtypes
@subtypes = $list->types('Predicted_gene');
# Two arguments. Count type & subtype
$genefinder_cnt = $list->types('Predicted_gene','genefinder');
DESCRIPTION
Ace::Sequence::FeatureList is a small class that provides statistical information about sequence features. From it you can obtain summary counts of the features and their types within a selected region.
OBJECT CREATION
You will not ordinarily create an Ace::Sequence::FeatureList object directly. Instead, objects will be created by calling a Ace::Sequence object's feature_list() method. If you wish to create an Ace::Sequence::FeatureList object directly, please consult the source code for the new() method.
OBJECT METHODS
There are only two methods in Ace::Sequence::FeatureList.
- type()
-
This method has five distinct behaviors, depending on its context and the number of parameters. Usage should be intuitive
Context Arguments Behavior ------- --------- -------- scalar -none- total count of features in list array -none- list feature types (e.g. "exon") scalar type count features of this type array type list subtypes of this type -any- type,subtype count features of this type & subtype
For example, this code fragment will count the number of exons present on the list:
$exon_count = $list->type('exon');
This code fragment will count the number of exons found by "genefinder":
$predicted_exon_count = $list->type('exon','genefinder');
This code fragment will print out all subtypes of "exon" and their counts:
for my $subtype ($list->type('exon')) { print $subtype,"\t",$list->type('exon',$subtype),"\n"; }
- asString()
-
print $list->asString;
This dumps the list out in tab-delimited format. The order of columns is type, subtype, count.
SEE ALSO
Ace, Ace::Object, Ace::Sequence, Ace::Sequence::Feature, GFF
AUTHOR
Lincoln Stein <lstein@w3.org> with extensive help from Jean Thierry-Mieg <mieg@kaa.crbm.cnrs-mop.fr>
Copyright (c) 1999, Lincoln D. Stein
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See DISCLAIMER.txt for disclaimers of warranty.