class Bio::Nexus::TaxaBlock
DESCRIPTION¶ ↑
Bio::Nexus::TaxaBlock
represents a taxa nexus block.
Example of Taxa block:¶ ↑
Begin Taxa;
Dimensions NTax=4; TaxLabels fish [comment] 'african frog' "rat snake" 'red mouse';
End;
USAGE¶ ↑
require 'bio/db/nexus' # Create a new parser: nexus = Bio::Nexus.new( nexus_data_as_string ) # Get first taxa block: taxa_block = nexus.get_taxa_blocks[ 0 ] # Get number of taxa: number_of_taxa = taxa_block.get_number_of_taxa.to_i # Get name of first taxon: first_taxon = taxa_block.get_taxa[ 0 ]
Public Class Methods
new( name )
click to toggle source
Creates a new TaxaBlock
object named ‘name’.
Arguments:
-
(required) name: String
Calls superclass method
Bio::Nexus::GenericBlock::new
# File lib/bio/db/nexus.rb 854 def initialize( name ) 855 super( name ) 856 @number_of_taxa = 0 857 @taxa = Array.new 858 end
Public Instance Methods
add_taxon( taxon )
click to toggle source
Adds a taxon name to this block.
Arguments:
-
(required) taxon: String
# File lib/bio/db/nexus.rb 905 def add_taxon( taxon ) 906 @taxa.push( taxon ) 907 end
get_number_of_taxa()
click to toggle source
Gets the “number of taxa” property.
- Returns
-
Integer
# File lib/bio/db/nexus.rb 879 def get_number_of_taxa 880 @number_of_taxa 881 end
get_taxa()
click to toggle source
Gets the taxa of this block.
- Returns
-
Array
# File lib/bio/db/nexus.rb 887 def get_taxa 888 @taxa 889 end
set_number_of_taxa( number_of_taxa )
click to toggle source
Sets the “number of taxa” property.
Arguments:
-
(required) number_of_taxa: Integer
# File lib/bio/db/nexus.rb 896 def set_number_of_taxa( number_of_taxa ) 897 @number_of_taxa = number_of_taxa 898 end
to_nexus()
click to toggle source
Returns a String describing this block as nexus formatted data.
- Returns
-
String
# File lib/bio/db/nexus.rb 863 def to_nexus 864 line_1 = String.new 865 line_1 << DIMENSIONS 866 if ( Nexus::Util::larger_than_zero( get_number_of_taxa ) ) 867 line_1 << " " << NTAX << "=" << get_number_of_taxa 868 end 869 line_1 << DELIMITER 870 line_2 = String.new 871 line_2 << TAXLABELS << " " << Nexus::Util::array_to_string( get_taxa ) << DELIMITER 872 Nexus::Util::to_nexus_helper( TAXA_BLOCK, [ line_1, line_2 ] ) 873 end