X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;ds=sidebyside;f=bp_bin%2Fanalyze_seq;h=f54b9054ea8d96862d77298fdd11b5770c3755b8;hb=4fdeb386dc869c75f87b0063a90557ffdeb1a312;hp=81ad0e16aa20393fad2662eb930c950e97d81822;hpb=d23d0565b9e6425d092a12c3d6e3cba47c3db4bd;p=biopieces.git diff --git a/bp_bin/analyze_seq b/bp_bin/analyze_seq index 81ad0e1..f54b905 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.has_key? :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