bio-assembly

BioRuby plugin for parsing, writing, and maniuplating assembly data

Currently supports ACE and CAF formats

Install

gem install bio-assembly

Usage

require 'bio-assembly'

ace file path

asm = Bio::Assembly.new("data.ace", :ace)

iterate through contigs (streams each contig)

asm.each_contig do |contig|

# print name and consensus seq
puts contig.name
puts contig.consensus_seq

# iterate through reads
contig.each_read do |read|
  
  # print name, sequence and orientation
  puts read.name
  puts read.seq
  puts read.orientation
 
  # print the postion of the read
  # in relation to the consensus seq
  puts read.from
  puts read.to
 
  # print the portion of the read
  # that was used to create the consensus
  puts read.clear_range_from
  puts read.clear_range_to
 
end

# grab the reads that make up a particular region of the contig
reads_in_region = contig.find_reads_in_range(10, 50)

end

experimental - output ace

file = File.new('out.ace', 'w') file.puts asm.to_ace

Contributing to bio-assembly

  • Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet
  • Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it
  • Fork the project
  • Start a feature/bugfix branch
  • Commit and push until you are happy with your contribution
  • Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.
  • Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.

Copyright (c) 2011 Chase Miller and Francesco Strozzi. See LICENSE.txt for further details.