Sha256: c79ad3d84f3ab769f04fa7a443d8402badaa34a929858e8587fb94d99391546e

Contents?: true

Size: 1.2 KB

Versions: 2

Compression:

Stored size: 1.2 KB

Contents

##
# GET REPRESENTATIVE READS
#

module Lederhosen
  class CLI

    desc "rep_reads",
         "output a fasta file containing representative reads for each cluster given a UCLUST output file and the joined reads file"

    method_option :clusters, :type => :string, :required => true
    method_option :output,   :type => :string, :required => true
    method_option :joined,   :type => :string, :required => true

    def rep_reads
      input        = options[:clusters]
      output       = options[:output]
      joined_reads = options[:joined]


      # Load cluster table!
      clstr_info      = Helpers.load_uc_file input     
      clstr_counts    = clstr_info[:clstr_counts] # clstr_counts[:clstr][sample.to_i] = reads
      seed_to_clstrnr = clstr_info[:seed_to_clstrnr]
      samples         = clstr_info[:samples]

      out_handle = File.open("#{output}", 'w')

      File.open(joined_reads) do |handle|
        records = Dna.new handle
        records.each do |dna|
          clstrnr = seed_to_clstrnr[dna.name]
          unless clstrnr.nil?
            dna.name = "#{dna.name}:cluster-#{clstrnr}"
            out_handle.puts dna
          end
        end
      end
      
      out_handle.close
    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
lederhosen-0.1.6 lib/lederhosen/tasks/rep_reads.rb
lederhosen-0.1.5 lib/lederhosen/tasks/rep_reads.rb