Returns aBio::PSORT::PSORT1::Report.
# File lib/bio/appl/psort/report.rb, line 36 def self.default_parser(output_report) rpt = self.new rpt.raw = output_report query_info = output_report.scan(%r^Query Information\n\n(.+?)\n\n/)[0][0].split(%r\n/) result_info = output_report.scan(%r^Result Information\n\n(.+?)\n\n\*/)[0][0] step1 = output_report.scan(%r^\*\*\* Reasoning Step: 1\n\n(.+?)\n\n/)[0][0] step2 = output_report.scan(%r^\*\*\* Reasoning Step: 2\n\n(.+?)\n\n/)[0][0] final_result = output_report.scan(%r\n\n----- Final Results -----\n\n(.+?)\n\n\n/)[0][0] rpt.entry_id = query_info[2].scan(%r^>(\S+) */).to_s rpt.origin = query_info[0].scan(%rORIGIN (\w+)/).to_s rpt.sequence = Bio::Sequence::AA.new(query_info[3..query_info.size].to_s) # rpt.reasoning rpt.final_result = final_result.split(%r\n/).map {|x| x = x.strip.split(%r---/).map {|y| y.strip } { 'prediction' => x[0], 'certainty' => x[1].scan(%rCertainty= (\d\.\d{3})/).to_s, 'comment' => x[1].scan(%r\((\w+)\)/).to_s } } return rpt end
Constructs aBio::PSORT::PSORT1::Report object.
# File lib/bio/appl/psort/report.rb, line 72 def initialize(entry_id = '', origin = '', title = '', sequence = '', result_info = '', reasoning = {}, final_result = []) @entry_id = entry_id @origin = origin @title = title @sequence = sequence @result_info = result_info @reasoning = reasoning @final_result = final_result @raw = '' end
Returns aBio::PSORT::PSORT1::Report.
# File lib/bio/appl/psort/report.rb, line 31 def self.parser(output_report) self.default_parser(output_report) end