Package Bio :: Package Nexus :: Module Nexus
[show private | hide private]
[frames | no frames]

Module Bio.Nexus.Nexus

Nexus class. Parse the contents of a nexus file. Based upon 'NEXUS: An extensible file format for systematic information' Maddison, Swofford, Maddison. 1997. Syst. Biol. 46(4):590-621
Classes
Block Represent a NEXUS block with block name and list of commandlines .
CharBuffer Helps reading NEXUS-words and characters from a buffer.
Commandline Represent a commandline as command and options.
Nexus  
StepMatrix Calculate a stepmatrix for weighted parsimony.

Exceptions
NexusError  

Function Summary
  combine(matrices)
Combine matrices in [(name,nexus-instance),...] and return new nexus instance.
  get_start_end(sequence, skiplist)
Return position of first and last character which is not in skiplist (defaults to ['-','?']).
  quotestrip(word)
Remove quotes and/or double quotes around identifiers.
  safename(name, mrbayes)
Return a taxon identifier according to NEXUS standard.
  _adjust_lines(lines)
Adjust linebreaks to match ';', strip leading/trailing whitespace
  _compact4nexus(orig_list)
Transform [1 2 3 5 6 7 8 12 15 18 20] (baseindex 0, used in the Nexus class) into '2-4 6-9 13-19\3 21' (baseindex 1, used in programs like Paup or MrBayes.).
  _kill_comments_and_break_lines(text)
Delete []-delimited comments out of a file and break into lines separated by ';'.
  _make_unique(l)
Check that all values in list are unique and return a pruned and sorted list.
  _replace_parenthesized_ambigs(seq, rev_ambig_values)
Replaces ambigs in xxx(ACG)xxx format by IUPAC ambiguity code.
  _seqmatrix2strmatrix(matrix)
Converts a Seq-object matrix to a plain sequence-string matrix.
  _sort_keys_by_values(p)
Returns a sorted list of keys of p sorted by values of p.

Variable Summary
str CHARSET = 'chars'
int INTERLEAVE = 70                                                                    
list KNOWN_NEXUS_BLOCKS = ['trees', 'data', 'characters', 'ta...
str MRBAYESSAFE = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNO...
str PUNCTUATION = '()[]{}/\\,;:=*\'"`+-<>'
list SPECIAL_COMMANDS = ['charstatelabels', 'charlabels', 'ta...
str TAXSET = 'taxa'
str WHITESPACE = ' \t\n'

Function Details

combine(matrices)

Combine matrices in [(name,nexus-instance),...] and return new nexus instance.

combined_matrix=combine([(name1,nexus_instance1),(name2,nexus_instance2),...] Character sets, character partitions and taxon sets are prefixed, readjusted and present in the combined matrix.

get_start_end(sequence, skiplist=['-', '?'])

Return position of first and last character which is not in skiplist (defaults to ['-','?']).

quotestrip(word)

Remove quotes and/or double quotes around identifiers.

safename(name, mrbayes=False)

Return a taxon identifier according to NEXUS standard. Wrap quotes around names with punctuation or whitespace, and double single quotes. mrbayes=True: write names without quotes, whitespace or punctuation for mrbayes.

_adjust_lines(lines)

Adjust linebreaks to match ';', strip leading/trailing whitespace

list_of_commandlines=_adjust_lines(input_text) Lines are adjusted so that no linebreaks occur within a commandline (except matrix command line)

_compact4nexus(orig_list)

Transform [1 2 3 5 6 7 8 12 15 18 20] (baseindex 0, used in the Nexus class) into '2-4 6-9 13-19\3 21' (baseindex 1, used in programs like Paup or MrBayes.).

_kill_comments_and_break_lines(text)

Delete []-delimited comments out of a file and break into lines separated by ';'.

stripped_text=_kill_comments_and_break_lines(text): Nested and multiline comments are allowed. [ and ] symbols within single or double quotes are ignored, newline ends a quote, all symbols with quotes are treated the same (thus not quoting inside comments like [this character ']' ends a comment]) Special [&...] and [\...] comments remain untouched, if not inside standard comment. Quotes inside special [& and [\ are treated as normal characters, but no nesting inside these special comments allowed (like [& [\ ]]). ';' ist deleted from end of line.

NOTE: this function is very slow for large files, and obsolete when using C extension cnexus

_make_unique(l)

Check that all values in list are unique and return a pruned and sorted list.

_replace_parenthesized_ambigs(seq, rev_ambig_values)

Replaces ambigs in xxx(ACG)xxx format by IUPAC ambiguity code.

_seqmatrix2strmatrix(matrix)

Converts a Seq-object matrix to a plain sequence-string matrix.

_sort_keys_by_values(p)

Returns a sorted list of keys of p sorted by values of p.

Variable Details

CHARSET

Type:
str
Value:
'chars'                                                                

INTERLEAVE

Type:
int
Value:
70                                                                    

KNOWN_NEXUS_BLOCKS

Type:
list
Value:
['trees', 'data', 'characters', 'taxa', 'sets']                        

MRBAYESSAFE

Type:
str
Value:
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890_'      

PUNCTUATION

Type:
str
Value:
'()[]{}/\\,;:=*\'"`+-<>'                                               

SPECIAL_COMMANDS

Type:
list
Value:
['charstatelabels',
 'charlabels',
 'taxlabels',
 'taxset',
 'charset',
 'charpartition',
 'taxpartition',
 'matrix',
...                                                                    

TAXSET

Type:
str
Value:
'taxa'                                                                 

WHITESPACE

Type:
str
Value:
''' \t
'''                                                                    

Generated by Epydoc 2.1 on Thu Aug 10 20:01:04 2006 http://epydoc.sf.net