Class: Bio::Blast::Default::Report

Inherits:
Object
  • Object
show all
Defined in:
lib/bio/appl/blast/format0.rb

Overview

Bio::Blast::Default::Report parses NCBI BLAST default output and stores information in the data. It may store some Bio::Blast::Default::Report::Iteration objects.

Direct Known Subclasses

Bl2seq::Report, Report_TBlast, RPSBlast::Report, WU::Report

Defined Under Namespace

Classes: AlwaysNil, F0dbstat, HSP, Hit, Iteration

Constant Summary

DELIMITER =

Delimiter of each entry. Bio::FlatFile uses it.

RS = "\nBLAST"
DELIMITER_OVERRUN =

(Integer) excess read size included in DELIMITER.

5

Instance Attribute Summary (collapse)

Class Method Summary (collapse)

Instance Method Summary (collapse)

Constructor Details

- (Report) initialize(str)

Creates a new Report object from BLAST result text.



48
49
50
51
52
53
54
55
56
57
58
# File 'lib/bio/appl/blast/format0.rb', line 48

def initialize(str)
  str = str.sub(/\A\s+/, '')
  str.sub!(/\n(T?BLAST.*)/m, "\n") # remove trailing entries for sure
  @entry_overrun = $1
  @entry = str
  data = str.split(/(?:^[ \t]*\n)+/)

  format0_split_headers(data)
  @iterations = format0_split_search(data)
  format0_split_stat_params(data)
end

Instance Attribute Details

- (Object) db_len (readonly)

Returns the value of attribute db_len



84
85
86
# File 'lib/bio/appl/blast/format0.rb', line 84

def db_len
  @db_len
end

- (Object) db_num (readonly)

Returns the value of attribute db_num



80
81
82
# File 'lib/bio/appl/blast/format0.rb', line 80

def db_num
  @db_num
end

- (Object) eff_space (readonly)

Returns the value of attribute eff_space



92
93
94
# File 'lib/bio/appl/blast/format0.rb', line 92

def eff_space
  @eff_space
end

- (Object) entry_overrun (readonly)

piece of next entry. Bio::FlatFile uses it.



60
61
62
# File 'lib/bio/appl/blast/format0.rb', line 60

def entry_overrun
  @entry_overrun
end

- (Object) expect (readonly)

Returns the value of attribute expect



116
117
118
# File 'lib/bio/appl/blast/format0.rb', line 116

def expect
  @expect
end

- (Object) gap_extend (readonly)

Returns the value of attribute gap_extend



112
113
114
# File 'lib/bio/appl/blast/format0.rb', line 112

def gap_extend
  @gap_extend
end

- (Object) gap_open (readonly)

Returns the value of attribute gap_open



108
109
110
# File 'lib/bio/appl/blast/format0.rb', line 108

def gap_open
  @gap_open
end

- (Object) iterations (readonly)

(PSI-BLAST) Returns iterations. It returns an array of Bio::Blast::Default::Report::Iteration class. Note that normal blastall result usually contains one iteration.



66
67
68
# File 'lib/bio/appl/blast/format0.rb', line 66

def iterations
  @iterations
end

- (Object) matrix (readonly)

Returns the value of attribute matrix



96
97
98
# File 'lib/bio/appl/blast/format0.rb', line 96

def matrix
  @matrix
end

- (Object) num_hits (readonly)

Returns the value of attribute num_hits



120
121
122
# File 'lib/bio/appl/blast/format0.rb', line 120

def num_hits
  @num_hits
end

- (Object) posted_date (readonly)

Returns the value of attribute posted_date



88
89
90
# File 'lib/bio/appl/blast/format0.rb', line 88

def posted_date
  @posted_date
end

- (Object) sc_match (readonly)

Returns the value of attribute sc_match



100
101
102
# File 'lib/bio/appl/blast/format0.rb', line 100

def sc_match
  @sc_match
end

- (Object) sc_mismatch (readonly)

Returns the value of attribute sc_mismatch



104
105
106
# File 'lib/bio/appl/blast/format0.rb', line 104

def sc_mismatch
  @sc_mismatch
end

Class Method Details

+ (Object) open(filename, *mode)

Opens file by using Bio::FlatFile.open.



43
44
45
# File 'lib/bio/appl/blast/format0.rb', line 43

def self.open(filename, *mode)
  Bio::FlatFile.open(self, filename, *mode)
end

Instance Method Details

- (Boolean) converged?

(PSI-BLAST) Same as iterations.last.converged?. Returns true if the last iteration is converged, otherwise, returns false.



203
204
205
# File 'lib/bio/appl/blast/format0.rb', line 203

def converged?
  @iterations.last.converged?
end

- (Object) db

Returns the name (filename or title) of the database.



227
228
229
230
231
232
233
234
235
236
# File 'lib/bio/appl/blast/format0.rb', line 227

def db
  unless defined?(@db)
    if /Database *\: *(.*)/m =~ @f0database then
      a = $1.split(/^/)
      a.pop if a.size > 1
      @db = a.collect { |x| x.sub(/\s+\z/, '') }.join(' ')
    end
  end #unless
  @db
end

- (Object) each_hit Also known as: each

Iterates over each hit of the last iteration. Same as iterations.last.each_hit. Yields a Bio::Blast::Default::Report::Hit object. This is very useful in most cases, e.g. for blastall results.



178
179
180
181
182
# File 'lib/bio/appl/blast/format0.rb', line 178

def each_hit
  @iterations.last.each do |x|
    yield x
  end
end

- (Object) each_iteration

(PSI-BLAST) Iterates over each iteration. Same as iterations.each. Yields a Bio::Blast::Default::Report::Iteration object.



168
169
170
171
172
# File 'lib/bio/appl/blast/format0.rb', line 168

def each_iteration
  @iterations.each do |x|
    yield x
  end
end

- (Object) entropy

Same as iterations.last.entropy.



128
# File 'lib/bio/appl/blast/format0.rb', line 128

def entropy;        @iterations.last.entropy;        end

- (Object) gapped_entropy

Same as iterations.last.gapped_entropy.



135
# File 'lib/bio/appl/blast/format0.rb', line 135

def gapped_entropy; @iterations.last.gapped_entropy; end

- (Object) gapped_kappa

Same as iterations.last.gapped_kappa.



131
# File 'lib/bio/appl/blast/format0.rb', line 131

def gapped_kappa;   @iterations.last.gapped_kappa;   end

- (Object) gapped_lambda

Same as iterations.last.gapped_lambda.



133
# File 'lib/bio/appl/blast/format0.rb', line 133

def gapped_lambda;  @iterations.last.gapped_lambda;  end

- (Object) hits

Same as iterations.last.hits. Returns the last iteration's hits. Returns an array of Bio::Blast::Default::Report::Hit object. This is very useful in most cases, e.g. for blastall results.



189
190
191
# File 'lib/bio/appl/blast/format0.rb', line 189

def hits
  @iterations.last.hits
end

- (Object) kappa

Same as iterations.last.kappa.



124
# File 'lib/bio/appl/blast/format0.rb', line 124

def kappa;          @iterations.last.kappa;          end

- (Object) lambda

Same as iterations.last.lambda.



126
# File 'lib/bio/appl/blast/format0.rb', line 126

def lambda;         @iterations.last.lambda;         end

- (Object) message

(PSI-BLAST) Same as iterations.last.message.



195
196
197
# File 'lib/bio/appl/blast/format0.rb', line 195

def message
  @iterations.last.message
end

- (Object) pattern

(PHI-BLAST) Same as iterations.first.pattern. Note that it returns the FIRST iteration's value.



155
# File 'lib/bio/appl/blast/format0.rb', line 155

def pattern; @iterations.first.pattern; end

- (Object) pattern_positions

(PHI-BLAST) Same as iterations.first.pattern_positions. Note that it returns the FIRST iteration's value.



160
161
162
# File 'lib/bio/appl/blast/format0.rb', line 160

def pattern_positions
  @iterations.first.pattern_positions
end

- (Object) program

Returns program name.



138
# File 'lib/bio/appl/blast/format0.rb', line 138

def program;        format0_parse_header; @program;        end

- (Object) query_def

Returns definition of the query.



150
# File 'lib/bio/appl/blast/format0.rb', line 150

def query_def; format0_parse_query; @query_def; end

- (Object) query_len

Returns length of the query.



147
# File 'lib/bio/appl/blast/format0.rb', line 147

def query_len; format0_parse_query; @query_len; end

- (Object) reference

Returns the bibliography reference of the BLAST software. Note that this method shows only the first reference. When you want to get additional references, you can use references method.



211
212
213
# File 'lib/bio/appl/blast/format0.rb', line 211

def reference
  references[0]
end

- (Object) references

Returns the bibliography references of the BLAST software. Returns an array of strings.



217
218
219
220
221
222
223
224
# File 'lib/bio/appl/blast/format0.rb', line 217

def references
  unless defined?(@references)
    @references = @f0references.collect do |x|
      x.to_s.gsub(/\s+/, ' ').strip
    end
  end #unless
  @references
end

- (Object) to_s

Returns whole entry as a string.



69
# File 'lib/bio/appl/blast/format0.rb', line 69

def to_s; @entry; end

- (Object) version

Returns version of the program.



140
# File 'lib/bio/appl/blast/format0.rb', line 140

def version;        format0_parse_header; @version;        end

- (Object) version_date

Returns released date of the program.



144
# File 'lib/bio/appl/blast/format0.rb', line 144

def version_date;   format0_parse_header; @version_date;   end

- (Object) version_number

Returns version number string of the program.



142
# File 'lib/bio/appl/blast/format0.rb', line 142

def version_number; format0_parse_header; @version_number; end