X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=bp_bin%2Fanalyze_seq;h=c2b96a5070b252bbe89f9e2e1c1fbd63055432a0;hb=2f0fd91b461033529a4a72e161bd133252a22eb6;hp=81ad0e16aa20393fad2662eb930c950e97d81822;hpb=d23d0565b9e6425d092a12c3d6e3cba47c3db4bd;p=biopieces.git diff --git a/bp_bin/analyze_seq b/bp_bin/analyze_seq index 81ad0e1..c2b96a5 100755 --- a/bp_bin/analyze_seq +++ b/bp_bin/analyze_seq @@ -29,30 +29,30 @@ # >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< -require 'biopieces' -require 'seq' +require 'maasha/biopieces' +require 'maasha/seq' casts = [] -bp = Biopieces.new +options = Biopieces.options_parse(ARGV, casts) -options = bp.parse(ARGV, casts) +Biopieces.open(options[:stream_in], options[:stream_out]) do |input, output| + input.each_record do |record| + if record[:SEQ] + seq = Seq.new(record[:SEQ_NAME], record[:SEQ], record[:SEQ_TYPE], record[:SCORE]) + comp = seq.composition -bp.each_record do |record| - if record.has_key? :SEQ - seq = Seq.new(record[:SEQ_NAME], record[:SEQ], record[:SEQ_TYPE], record[:SCORE]) - comp = seq.composition + comp.each_pair do |key,val| + record["RES[#{key}]"] = val + end - comp.each_pair do |key,val| - record["RES_#{key}"] = val + record["SOFT_MASK%"] = seq.soft_mask + record["HARD_MASK%"] = (comp["N"].to_f / (seq.len - seq.indels).to_f * 100.0).round(2) + record["GC%"] = ((comp["G"] + comp["C"]).to_f / (seq.len - seq.indels).to_f * 100.0).round(2) end - record["HARD_MASK"] = seq.hard_mask - record["SOFT_MASK"] = seq.soft_mask - record["GC"] = ((comp["G"] + comp["C"]).to_f / (seq.len - seq.indels).to_f * 100.0).round(2) + output.puts record end - - bp.puts record end