[BioRuby-ja] BLAST+のエラーについて

masa masap.hat @ gmail.com
2011年 10月 17日 (月) 04:34:31 UTC


はじめまして。
チューリッヒ大学で働いている畠山と申します。
Webで検索してもこれといった情報が見つからず、MLに投稿してみる事にしました。

いわゆるLegacy Blast(BLASTN 2.2.21)の結果はBioRubyWikiのチュートリアルにもあるように

Bio::Blast.reports(ARGF) do end

でパースできるのですが、Blast+(2.2.23+)の結果は上のBio::Blast.reportsメソッドで読み込もうとすると以下のようなエラーがでます。

gems/ruby-1.9.3-preview1/gems/bio-1.4.2/lib/bio/appl/blast/format8.rb:70:in
`tab_parse_hsp': undefined method `strip' for nil:NilClass
(NoMethodError)
  from .rvm/gems/ruby-1.9.3-preview1/gems/bio-1.4.2/lib/bio/appl/blast/format8.rb:32:in
`block in tab_parse'
  from .rvm/gems/ruby-1.9.3-preview1/gems/bio-1.4.2/lib/bio/appl/blast/format8.rb:30:in
`each_line'
  from .rvm/gems/ruby-1.9.3-preview1/gems/bio-1.4.2/lib/bio/appl/blast/format8.rb:30:in
`tab_parse'
  from .rvm/gems/ruby-1.9.3-preview1/gems/bio-1.4.2/lib/bio/appl/blast/report.rb:74:in
`auto_parse'
  from .rvm/gems/ruby-1.9.3-preview1/gems/bio-1.4.2/lib/bio/appl/blast/report.rb:96:in
`initialize'
  from .rvm/gems/ruby-1.9.3-preview1/gems/bio-1.4.2/lib/bio/appl/blast/report.rb:552:in
`new'
  from .rvm/gems/ruby-1.9.3-preview1/gems/bio-1.4.2/lib/bio/appl/blast/report.rb:552:in
`prepare_parsed_entries'
  from .rvm/gems/ruby-1.9.3-preview1/gems/bio-1.4.2/lib/bio/appl/blast/report.rb:506:in
`get_entry'
  from .rvm/gems/ruby-1.9.3-preview1/gems/bio-1.4.2/lib/bio/appl/blast/report.rb:517:in
`get_parsed_entry'
  from .rvm/gems/ruby-1.9.3-preview1/gems/bio-1.4.2/lib/bio/io/flatfile.rb:288:in
`next_entry'
  from .rvm/gems/ruby-1.9.3-preview1/gems/bio-1.4.2/lib/bio/io/flatfile.rb:335:in
`each_entry'
  from .rvm/gems/ruby-1.9.3-preview1/gems/bio-1.4.2/lib/bio/appl/blast.rb:187:in
`reports'
  from test.rb:4:in `<main>'

ちなみにblastで実行したコマンドは以下の通りです。

$ makeblastdb -in TAIR10_seq_20101214 -dbtype nucl -hash_index
$ blastn -db TAIR10_seq_20101214 -query seq.fas -out blastn_result.dat

この結果を読み込んだスクリプトは
----
require 'rubygems'
require 'bio'

Bio::Blast.reports(ARGF) do |report|
  puts "Hits for " + report.query_def + " against " + report.db
end
----
です。

ちなみに

bioruby 1.4.2
ruby 1.9.3

で実行しています。

よろしくお願いします。

畠山



BioRuby-ja メーリングリストの案内