Class: Bio::Blast::Default::Report
- 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
Defined Under Namespace
Classes: AlwaysNil, F0dbstat, HSP, Hit, Iteration
Constant Summary collapse
- 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
-
#db_len ⇒ Object
readonly
number of letters in database.
-
#db_num ⇒ Object
readonly
number of sequences in database.
-
#eff_space ⇒ Object
readonly
effective length of the database.
-
#entry_overrun ⇒ Object
readonly
piece of next entry.
-
#expect ⇒ Object
readonly
e-value threshold specified when BLAST was executed.
-
#gap_extend ⇒ Object
readonly
gap extend penalty.
-
#gap_open ⇒ Object
readonly
gap open penalty.
-
#iterations ⇒ Object
readonly
(PSI-BLAST) Returns iterations.
-
#matrix ⇒ Object
readonly
name of the matrix.
-
#num_hits ⇒ Object
readonly
number of hits.
-
#posted_date ⇒ Object
readonly
posted date of the database.
-
#sc_match ⇒ Object
readonly
match score of the matrix.
-
#sc_mismatch ⇒ Object
readonly
mismatch score of the matrix.
Class Method Summary collapse
-
.open(filename, *mode) ⇒ Object
Opens file by using Bio::FlatFile.open.
Instance Method Summary collapse
-
#converged? ⇒ Boolean
(PSI-BLAST) Same as
iterations.last.converged?
. -
#db ⇒ Object
Returns the name (filename or title) of the database.
-
#each_hit ⇒ Object
(also: #each)
Iterates over each hit of the last iteration.
-
#each_iteration ⇒ Object
(PSI-BLAST) Iterates over each iteration.
-
#entropy ⇒ Object
Same as
iterations.last.entropy
. -
#gapped_entropy ⇒ Object
Same as
iterations.last.gapped_entropy
. -
#gapped_kappa ⇒ Object
Same as
iterations.last.gapped_kappa
. -
#gapped_lambda ⇒ Object
Same as
iterations.last.gapped_lambda
. -
#hits ⇒ Object
Same as
iterations.last.hits
. -
#initialize(*arg) ⇒ Report
constructor
def.
-
#kappa ⇒ Object
Same as
iterations.last.kappa
. -
#lambda ⇒ Object
Same as
iterations.last.lambda
. -
#message ⇒ Object
(PSI-BLAST) Same as
iterations.last.message
. -
#pattern ⇒ Object
(PHI-BLAST) Same as
iterations.first.pattern
. -
#pattern_positions ⇒ Object
(PHI-BLAST) Same as
iterations.first.pattern_positions
. -
#program ⇒ Object
Returns program name.
-
#query_def ⇒ Object
Returns definition of the query.
-
#query_len ⇒ Object
Returns length of the query.
-
#reference ⇒ Object
Returns the bibliography reference of the BLAST software.
-
#to_s ⇒ Object
Returns whole entry as a string.
-
#version ⇒ Object
Returns version of the program.
-
#version_date ⇒ Object
Returns released date of the program.
-
#version_number ⇒ Object
Returns version number string of the program.
Constructor Details
#initialize(*arg) ⇒ Report
def
53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/bio/appl/blast/format0.rb', line 53 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
#db_len ⇒ Object (readonly)
number of letters in database
102 103 104 |
# File 'lib/bio/appl/blast/format0.rb', line 102 def db_len @db_len end |
#db_num ⇒ Object (readonly)
number of sequences in database
98 99 100 |
# File 'lib/bio/appl/blast/format0.rb', line 98 def db_num @db_num end |
#eff_space ⇒ Object (readonly)
effective length of the database
110 111 112 |
# File 'lib/bio/appl/blast/format0.rb', line 110 def eff_space @eff_space end |
#entry_overrun ⇒ Object (readonly)
piece of next entry. Bio::FlatFile uses it.
65 66 67 |
# File 'lib/bio/appl/blast/format0.rb', line 65 def entry_overrun @entry_overrun end |
#expect ⇒ Object (readonly)
e-value threshold specified when BLAST was executed
134 135 136 |
# File 'lib/bio/appl/blast/format0.rb', line 134 def expect @expect end |
#gap_extend ⇒ Object (readonly)
gap extend penalty
130 131 132 |
# File 'lib/bio/appl/blast/format0.rb', line 130 def gap_extend @gap_extend end |
#gap_open ⇒ Object (readonly)
gap open penalty
126 127 128 |
# File 'lib/bio/appl/blast/format0.rb', line 126 def gap_open @gap_open end |
#iterations ⇒ Object (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.
71 72 73 |
# File 'lib/bio/appl/blast/format0.rb', line 71 def iterations @iterations end |
#matrix ⇒ Object (readonly)
name of the matrix
114 115 116 |
# File 'lib/bio/appl/blast/format0.rb', line 114 def matrix @matrix end |
#num_hits ⇒ Object (readonly)
number of hits. Note that this may differ from hits.size
.
138 139 140 |
# File 'lib/bio/appl/blast/format0.rb', line 138 def num_hits @num_hits end |
#posted_date ⇒ Object (readonly)
posted date of the database
106 107 108 |
# File 'lib/bio/appl/blast/format0.rb', line 106 def posted_date @posted_date end |
#sc_match ⇒ Object (readonly)
match score of the matrix
118 119 120 |
# File 'lib/bio/appl/blast/format0.rb', line 118 def sc_match @sc_match end |
#sc_mismatch ⇒ Object (readonly)
mismatch score of the matrix
122 123 124 |
# File 'lib/bio/appl/blast/format0.rb', line 122 def sc_mismatch @sc_mismatch end |
Class Method Details
Instance Method Details
#converged? ⇒ Boolean
(PSI-BLAST) Same as iterations.last.converged?
. Returns true if the last iteration is converged, otherwise, returns false.
221 222 223 |
# File 'lib/bio/appl/blast/format0.rb', line 221 def converged? @iterations.last.converged? end |
#db ⇒ Object
Returns the name (filename or title) of the database.
234 235 236 237 238 239 240 241 242 243 |
# File 'lib/bio/appl/blast/format0.rb', line 234 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 |
#each_hit ⇒ Object 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.
196 197 198 199 200 |
# File 'lib/bio/appl/blast/format0.rb', line 196 def each_hit @iterations.last.each do |x| yield x end end |
#each_iteration ⇒ Object
(PSI-BLAST) Iterates over each iteration. Same as iterations.each
. Yields a Bio::Blast::Default::Report::Iteration object.
186 187 188 189 190 |
# File 'lib/bio/appl/blast/format0.rb', line 186 def each_iteration @iterations.each do |x| yield x end end |
#entropy ⇒ Object
Same as iterations.last.entropy
.
146 |
# File 'lib/bio/appl/blast/format0.rb', line 146 def entropy; @iterations.last.entropy; end |
#gapped_entropy ⇒ Object
Same as iterations.last.gapped_entropy
.
153 |
# File 'lib/bio/appl/blast/format0.rb', line 153 def gapped_entropy; @iterations.last.gapped_entropy; end |
#gapped_kappa ⇒ Object
Same as iterations.last.gapped_kappa
.
149 |
# File 'lib/bio/appl/blast/format0.rb', line 149 def gapped_kappa; @iterations.last.gapped_kappa; end |
#gapped_lambda ⇒ Object
Same as iterations.last.gapped_lambda
.
151 |
# File 'lib/bio/appl/blast/format0.rb', line 151 def gapped_lambda; @iterations.last.gapped_lambda; end |
#hits ⇒ Object
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.
207 208 209 |
# File 'lib/bio/appl/blast/format0.rb', line 207 def hits @iterations.last.hits end |
#kappa ⇒ Object
Same as iterations.last.kappa
.
142 |
# File 'lib/bio/appl/blast/format0.rb', line 142 def kappa; @iterations.last.kappa; end |
#lambda ⇒ Object
Same as iterations.last.lambda
.
144 |
# File 'lib/bio/appl/blast/format0.rb', line 144 def lambda; @iterations.last.lambda; end |
#message ⇒ Object
(PSI-BLAST) Same as iterations.last.message
.
213 214 215 |
# File 'lib/bio/appl/blast/format0.rb', line 213 def @iterations.last. end |
#pattern ⇒ Object
(PHI-BLAST) Same as iterations.first.pattern
. Note that it returns the FIRST iteration’s value.
173 |
# File 'lib/bio/appl/blast/format0.rb', line 173 def pattern; @iterations.first.pattern; end |
#pattern_positions ⇒ Object
(PHI-BLAST) Same as iterations.first.pattern_positions
. Note that it returns the FIRST iteration’s value.
178 179 180 |
# File 'lib/bio/appl/blast/format0.rb', line 178 def pattern_positions @iterations.first.pattern_positions end |
#program ⇒ Object
Returns program name.
156 |
# File 'lib/bio/appl/blast/format0.rb', line 156 def program; format0_parse_header; @program; end |
#query_def ⇒ Object
Returns definition of the query.
168 |
# File 'lib/bio/appl/blast/format0.rb', line 168 def query_def; format0_parse_query; @query_def; end |
#query_len ⇒ Object
Returns length of the query.
165 |
# File 'lib/bio/appl/blast/format0.rb', line 165 def query_len; format0_parse_query; @query_len; end |
#reference ⇒ Object
Returns the bibliography reference of the BLAST software.
226 227 228 229 230 231 |
# File 'lib/bio/appl/blast/format0.rb', line 226 def reference unless defined?(@reference) @reference = @f0reference.to_s.gsub(/\s+/, ' ').strip end #unless @reference end |
#to_s ⇒ Object
Returns whole entry as a string.
74 |
# File 'lib/bio/appl/blast/format0.rb', line 74 def to_s; @entry; end |
#version ⇒ Object
Returns version of the program.
158 |
# File 'lib/bio/appl/blast/format0.rb', line 158 def version; format0_parse_header; @version; end |
#version_date ⇒ Object
Returns released date of the program.
162 |
# File 'lib/bio/appl/blast/format0.rb', line 162 def version_date; format0_parse_header; @version_date; end |
#version_number ⇒ Object
Returns version number string of the program.
160 |
# File 'lib/bio/appl/blast/format0.rb', line 160 def version_number; format0_parse_header; @version_number; end |