From tomoakin @ kenroku.kanazawa-u.ac.jp Fri Apr 22 08:51:01 2005 From: tomoakin @ kenroku.kanazawa-u.ac.jp (Tomoaki NISHIYAMA) Date: Fri Apr 22 08:44:29 2005 Subject: [BioRuby-ja] parse bl2seq output Message-ID: biorubyの開発者の皆様 bl2seqの出力をパースするプログラムが見つからなかったので、 format0.rbをもとに、parserを、 blast.rbをもとにbl2seqを呼び出すプログラムを 作ってみました。 とりあえず、動くようになったという段階で まだあまりきれいにはしていませんが、 興味を持っていただけるようでしたらお出ししたいと思います。 何らかの形で取り込んでいただけたらうれしいです。 format0はobsoleteにする方針なのかなとも思ったのですが、 bl2seqにはtraditionalとtabularしか出力形式がないようなので format0を改造することで読み込むことにしました。 また、実装として、データの受け渡しで、二つのファイルを渡すので、 /dev/fdを使ったので、やや可搬性が低い(unix only?)のではと 危惧するところもあるのですが、だからといって、temporary fileを 二つ作るのも美しくない(他のプロセスと干渉しやすくなる)ので迷うところです。 -- 西山智明 金沢大学 学際科学実験センター ゲノム機能解析分野 (4月に基生研から移りました) From ktym @ hgc.jp Fri Apr 22 12:09:59 2005 From: ktym @ hgc.jp (Toshiaki Katayama) Date: Fri Apr 22 12:05:25 2005 Subject: [BioRuby-ja] parse bl2seq output In-Reply-To: References: Message-ID: <1f1a40e65b7afa20489b5fd3a63232cc@hgc.jp> 西山様 久々のトラフィックですね。感謝。 On 2005/04/22, at 21:51, Tomoaki NISHIYAMA wrote: > bl2seqの出力をパースするプログラムが見つからなかったので、 > format0.rbをもとに、parserを、 > blast.rbをもとにbl2seqを呼び出すプログラムを > 作ってみました。 > > とりあえず、動くようになったという段階で > まだあまりきれいにはしていませんが、 > 興味を持っていただけるようでしたらお出ししたいと思います。 > 何らかの形で取り込んでいただけたらうれしいです。 ありがとうございます。 送って頂ければ適宜整えて取り込みたいと思います。 > format0はobsoleteにする方針なのかなとも思ったのですが、 > bl2seqにはtraditionalとtabularしか出力形式がないようなので > format0を改造することで読み込むことにしました。 標準の出力フォーマットがパースできるのはやはり便利ですし、 obsolete にするといった予定はないですよ。 一部 API がフォーマット毎に不揃いなところがあるので、 そちらは今後改善する予定です。 余談ですが、後藤さんの書かれた BioRuby の BLAST 標準出力 フォーマットパーザは BioPerl よりも高速に動作する点もウリです。 今週、京都で開催された Human Genome Meeting に BioPerl の Ewan Birney 氏が来ていたので、BioRuby スタッフと一緒に汲み上げ 湯葉をつつきながら、20 倍速いという話をしたところでした。 参考: http://bioruby.org/archive/doc/Japanese/BR031210-mbsj.pdf > また、実装として、データの受け渡しで、二つのファイルを渡すので、 > /dev/fdを使ったので、やや可搬性が低い(unix only?)のではと > 危惧するところもあるのですが、だからといって、temporary fileを > 二つ作るのも美しくない(他のプロセスと干渉しやすくなる)ので迷うところです。 なるほど。 テンポラリな入力ファイルが2つあるのはやっかいですね。 最近は、blastall など外部プログラムを実行する部分は ほとんどの場合シェルやグリッドですますことが多いので、 結果のパースさえできれば十分じゃないのかな、とか思うと 実行部は作り込んでも努力の割に報われない気がして なかなかモチベーションが上がらなかったり。 もちろん、全部 Ruby で完結したいという場合もあるので、 必要ないとは思いませんし、あれば便利なわけですが。 といいつつ、CVS にはプロセス起動用の bio/appl/factory.rb と いうものが作りかけで入っています。これにテンポラリファイルの 扱いまでサポートしてあると便利かもしれないですね。 片山 From kawashima @ develop.zool.kyoto-u.ac.jp Sat Apr 23 00:56:54 2005 From: kawashima @ develop.zool.kyoto-u.ac.jp (takeshi kawashima) Date: Sat Apr 23 00:50:49 2005 Subject: [BioRuby-ja] =?iso-2022-jp?b?GyRCJV4layVBJVUlISU5JT8kTjxoGyhC?= =?iso-2022-jp?b?GyRCJGowNyQkJEc8QUxkGyhCMhskQkVAGyhC?= In-Reply-To: <1f1a40e65b7afa20489b5fd3a63232cc@hgc.jp> References: <1f1a40e65b7afa20489b5fd3a63232cc@hgc.jp> Message-ID: <200504230456.AA02213@naozane.develop.zool.kyoto-u.ac.jp> 京都大学の川島です。 いつもbioruby使っております。 ところで、次の3点の質問について教えてください。 1、 マルチファスタから任意の配列を、取得する方法を教えてください。 これまで、br-bioflat.rbを重宝していたのですけれど、複数の配列を取得する場合は、 queryname_list_ary.each do |queryname| sequence = `bioflat dbname queryname` end などとしないとだめなんでしょうか? 最近使うデータ量が多くなるとともに、すごい時間がかかるようになってしまいました。 bioflatにqueryのリストを渡すようなことはできないのでしょうか? 2、 Tutorialにあるbiorubyでblastを書ける例では、一度に一つのqueryを与えていますが、 実際のblastは blastall -p blastn -d database -i queryfile としたとき、queryfileの中身はマルチファスタでもOKですよね? biorubyの中で、マルチファスタデータをクエリーにすることはできませんか? 3、 最新のbiorubyで、megablastをかけることはできますか? ==================================== 川島 武士   京都大学・大学院理学研究科   分子・進化発生生物学研究室 kawashima@develop.zool.kyoto-u.ac.jp ==================================== From n @ bioruby.org Sat Apr 23 03:11:26 2005 From: n @ bioruby.org (n@bioruby.org) Date: Sat Apr 23 03:05:34 2005 Subject: [BioRuby-ja] =?iso-2022-jp?B?GyRCJV4layVBJVUlISU5JT8kThsoQg==?= =?iso-2022-jp?B?GyRCPGgkajA3JCQkRzxBTGQbKEIyGyRCRUAbKEI=?= In-Reply-To: <200504230456.AA02213@naozane.develop.zool.kyoto-u.ac.jp> References: <1f1a40e65b7afa20489b5fd3a63232cc@hgc.jp> <200504230456.AA02213@naozane.develop.zool.kyoto-u.ac.jp> Message-ID: <20050423.161126.226806940.cortel@machina.localizome.net> 川島さん なかおです。 From: takeshi kawashima Subject: [BioRuby-ja] マルチファスタの取り扱いで質問2点 Date: Sat, 23 Apr 2005 13:56:54 +0900 > 京都大学の川島です。 > > いつもbioruby使っております。 > ところで、次の3点の質問について教えてください。 > > 1、 > マルチファスタから任意の配列を、取得する方法を教えてください。 > これまで、br-bioflat.rbを重宝していたのですけれど、複数の配列を取得する場合は、 > queryname_list_ary.each do |queryname| > sequence = `bioflat dbname queryname` > end > などとしないとだめなんでしょうか? > 最近使うデータ量が多くなるとともに、すごい時間がかかるようになってしまいました。 > bioflatにqueryのリストを渡すようなことはできないのでしょうか? br_bioflat.rb には複数のキーワードをあたえることができます。 例: br_bioflat.rb swissprot 104K_THEPA 108_LYCES 子プロセスの起動回数がへるのでそのぶん高速化できます。 これでも時間がかかる場合は、br_bioflat.rb ソースを参考にして br_bioflat.rb --create で作成したデータベースを直接検索する方法が あります。 http://raa.ruby-lang.org/gonzui/markup/bioruby/bin/br_bioflat.rb#l167 > 167: def do_search このメソッドが参考になるとおもいます。 > 192: db = Bio::FlatFileIndex.open(dbname) dbname はデータベースのフルパス。 > 212: r.each do |i| > 213: print db.search_primary(i) > 214: end r はキーワードの Array になっています。 では - - 中尾 光輝 From ktym @ hgc.jp Sat Apr 23 14:04:06 2005 From: ktym @ hgc.jp (Toshiaki Katayama) Date: Sat Apr 23 13:57:25 2005 Subject: [BioRuby-ja] =?iso-2022-jp?b?UmU6IBskQiVeJWslQSVVJSElOSU/GyhC?= =?iso-2022-jp?b?GyRCJE48aCRqMDckJCRHPEFMZBsoQjIbJEJFQBsoQg==?= In-Reply-To: <200504230456.AA02213@naozane.develop.zool.kyoto-u.ac.jp> References: <1f1a40e65b7afa20489b5fd3a63232cc@hgc.jp> <200504230456.AA02213@naozane.develop.zool.kyoto-u.ac.jp> Message-ID: <455094d2cfb4f35d6a32aa7e35df0e3e@hgc.jp> 川島様 中尾さんの返答されなかった残りの部分ですが、 On 2005/04/23, at 13:56, takeshi kawashima wrote: > 2、 > Tutorialにあるbiorubyでblastを書ける例では、一度に一つのqueryを与えていますが、 > 実際のblastは > blastall -p blastn -d database -i queryfile > としたとき、queryfileの中身はマルチファスタでもOKですよね? > biorubyの中で、マルチファスタデータをクエリーにすることはできませんか? マルチファスタのクエリー自体は投げられるようですが、 結果を受け取るところでマルチを想定していないですね。 bio/appl/blast.rb: def parse_result(data) Report.new(data, @parser) end ここを Bio::FlatFile がやっているような感じに直せば いいような気がしますが、どうでしょうね。>後藤さん? > 3、 > 最新のbiorubyで、megablastをかけることはできますか? 特に対応していません。 昨日の別のメールに書いたことと重なりますが、かけるのも Ruby から やれた方が嬉しいということでしょうから検討したいと思います。 結果の方は % megablast -i eco.nuc -d syn.genome 'gn:syn'=='+eco:b3756' (3325859 860 3325998 998) 12 'gn:syn'=='-eco:b3756' (2452730 998 2452869 860) 12 'gn:syn'=='+eco:b4007' (3325859 860 3325998 999) 13 : みたいなフォーマットを適宜パースできるだけでいいでしょうか? 参考までに、よく使われるオプションとかあれば教えてください。 片山 From kawashima @ develop.zool.kyoto-u.ac.jp Sun Apr 24 22:23:22 2005 From: kawashima @ develop.zool.kyoto-u.ac.jp (takeshi kawashima) Date: Sun Apr 24 22:17:31 2005 Subject: [BioRuby-ja] Re: =?ISO-2022-JP?B?GyRCJV4layVBJVUlISU5GyhK?= =?ISO-2022-JP?B?GyRCJT8kTjxoJGowNyQkJEc8QUxkGyhCMhskQkVAGyhC?= In-Reply-To: <455094d2cfb4f35d6a32aa7e35df0e3e@hgc.jp> References: <455094d2cfb4f35d6a32aa7e35df0e3e@hgc.jp> Message-ID: <200504250223.AA02216@naozane.develop.zool.kyoto-u.ac.jp> なかおさん、片山さん、回答ありがとうございます。 片山さんのコメントに対してですが、 >% megablast -i eco.nuc -d syn.genome >'gn:syn'=='+eco:b3756' (3325859 860 3325998 998) 12 >'gn:syn'=='-eco:b3756' (2452730 998 2452869 860) 12 >'gn:syn'=='+eco:b4007' (3325859 860 3325998 999) 13 > : >みたいなフォーマットを適宜パースできるだけでいいでしょうか? >参考までに、よく使われるオプションとかあれば教えてください。 僕の個人的な例ですが、megablastを使うのは、クエリーがたくさんあるときではなく、 クエリー配列がでかい(1Mb以上)時です。 ですから、部分的にちょっと似ている部分などは気にする必要がないので、 megablasr -i query -d database -W 24 -e 1e-199 -o outputfile などとしています。 (あとは -b 1 -v 1 -a 2なども良く使います。トップヒットしか必要でないことが多いので。) とりいそぎ         川島より P.S ところで、JGIで知り合いがくれたperlのプログラムでとても便利なのが、 上記のようなmegablastの結果をパースして、blastのふつうの フォーマット風に書き直して表示するというものです。 このプログラムがあると、後はblastの結果に対して使っている自分のいろいろな プログラムをそのまま使えるので便利でした。 ==================================== 川島 武士   京都大学・大学院理学研究科   分子・進化発生生物学研究室 kawashima@develop.zool.kyoto-u.ac.jp ==================================== From shige @ nibb.ac.jp Tue Apr 26 13:38:50 2005 From: shige @ nibb.ac.jp (Shuji SHIGENOBU) Date: Tue Apr 26 13:32:04 2005 Subject: [BioRuby-ja] =?ISO-2022-JP?B?GyRCJV4layVBJVUlISU5JT8kTjxoGyhC?= =?ISO-2022-JP?B?GyRCJGowNyQkJEc8QUxkGyhCMhskQkVAGyhC?= In-Reply-To: <200504230456.AA02213@naozane.develop.zool.kyoto-u.ac.jp> References: <1f1a40e65b7afa20489b5fd3a63232cc@hgc.jp> <200504230456.AA02213@naozane.develop.zool.kyoto-u.ac.jp> Message-ID: <426E7CAA.7060809@nibb.ac.jp> こんにちは,基生研の重信です. 話の流れからそれてしまいますが,私は,multi-FASTAからの配列の取得には NCBI BLASTに付属のfastacmdを自作のRubyラッパーを介して使っています.ご存 じかもしれませんがfastacmd自体の使い方はこんな感じです. $ fastacmd -d nr -s P25724 #ひとつのシークエンスをとってくるとき $ fastacmd -d nr -s P25724,AAB59189,AAA28715" #複数のシークエンスをとっ てくるとき. formatdbでデータベースをフォーマットする際に -o オプションをつける必要が あります.NCBIがFTPで提供しているntやnrなどのblastdbはそのまま使えます. もちろんこれをRuby scriptの中で使いたいので,Rubyでwrapperを作りました. 以下に主要部分を書いておきます.(変なところがあったら皆さんつっこんで下 さい). eachメソッドで全entryを走査できますし,Enumerableをincludeしているので, collectやselectなどのメソッドもつかえます.ベンチマークをとったことはあ りませんので他の方法と比べて速いかどうかはわかりませんけれども.ご参考に なれば. # blastdb.rb # -- Ruby Wrapper for NCBI fastacmd # # author: Shuji SHIGENOBU require 'bio/db/fasta' require 'bio/io/flatfile' require 'open3' module Bio class BlastDB include Enumerable FASTACMD = 'fastacmd' def initialize(db) @database = db end def get_by_id(id) cmd = "#{FASTACMD} -d #{@database} -s #{id}" begin inn, out, err = Open3.popen3(cmd) result = out.read err_msg = err.read fas = Bio::FastaFormat.new(result) return fas rescue raise "[Error] command execution failed : #{cmd}\n#{err_msg}" ensure inn.close; out.close; err.close end end def get_by_ids(ids) # ids: Array object cmd = "#{FASTACMD} -d #{@database} -s #{ids.join(',')}" begin inn, out, err = Open3.popen3(cmd) err_msg = err.read fas_set = Bio::FlatFile.new(Bio::FastaFormat, out).to_a return fas_set rescue raise "[Error] command execution failed : #{cmd}\n#{err_msg}" ensure inn.close; out.close; err.close end end def each_entry cmd = "#{FASTACMD} -d #{@database} -D T" io = IO.popen(cmd) f = Bio::FlatFile.new(Bio::FastaFormat, io) f.each_entry do |e| yield e end io.close end alias :each :each_entry end end if __FILE__ == $0 #test code bdb = Bio::BlastDB.new("/db/myblastdb") # Retrieve one sequence puts bdb.get_by_id("P25724") # Retrieve one more sequences bdb.get_by_ids(["P25724", "AAB59189", "AAA28715"]).each do |fas| puts fas end # Iterate all sequences bdb.each do |fas| p [fas.definition[0..30], fas.seq.size] end end -- --- Shuji SHIGENOBU, Ph.D. shige@nibb.ac.jp National Institutes of Natural Sciences Okazaki Institute for Integrative Bioscience National Institute for Basic Biology Higashiyama, Myodaiji, Okazaki 444-8787 Japan Phone: +81-564-59-5876 Fax: +81-564-59-5879 From ktym @ hgc.jp Tue Apr 26 20:09:52 2005 From: ktym @ hgc.jp (Toshiaki Katayama) Date: Tue Apr 26 20:03:08 2005 Subject: =?ISO-2022-JP?B?UmU6IFtCaW9SdWJ5LWphXSAbJEIlXiVrJUElVSUhJTkbKEI=?= =?ISO-2022-JP?B?GyRCJT8kTjxoJGowNyQkJEc8QUxkGyhCMhskQkVAGyhC?= In-Reply-To: <426E7CAA.7060809@nibb.ac.jp> References: <1f1a40e65b7afa20489b5fd3a63232cc@hgc.jp> <200504230456.AA02213@naozane.develop.zool.kyoto-u.ac.jp> <426E7CAA.7060809@nibb.ac.jp> Message-ID: 重信様 fastacmd はインデックス持ってるので速いですよね。 bio/io/fastacmd.rb あたりに取り込ませて頂いてもよろしいでしょうか? ネームスペースは Bio::BlastDB or Bio::BLASTDB or Bio::BLAST::DB or Bio::BLAST::Fastacmd あたりかなぁ、、 あと HMMER についてくる sfetch も便利だと思います。 片山 On 2005/04/27, at 2:38, Shuji SHIGENOBU wrote: > こんにちは,基生研の重信です. > > 話の流れからそれてしまいますが,私は,multi-FASTAからの配列の取得には > NCBI BLASTに付属のfastacmdを自作のRubyラッパーを介して使っています.ご存 > じかもしれませんがfastacmd自体の使い方はこんな感じです. > > $ fastacmd -d nr -s P25724 #ひとつのシークエンスをとってくるとき > $ fastacmd -d nr -s P25724,AAB59189,AAA28715" #複数のシークエンスをとっ > てくるとき. > > formatdbでデータベースをフォーマットする際に -o オプションをつける必要が > あります.NCBIがFTPで提供しているntやnrなどのblastdbはそのまま使えます. > > もちろんこれをRuby scriptの中で使いたいので,Rubyでwrapperを作りました. > 以下に主要部分を書いておきます.(変なところがあったら皆さんつっこんで下 > さい). > > eachメソッドで全entryを走査できますし,Enumerableをincludeしているので, > collectやselectなどのメソッドもつかえます.ベンチマークをとったことはあ > りませんので他の方法と比べて速いかどうかはわかりませんけれども.ご参考に > なれば. > > > # blastdb.rb > # -- Ruby Wrapper for NCBI fastacmd > # > # author: Shuji SHIGENOBU > > require 'bio/db/fasta' > require 'bio/io/flatfile' > require 'open3' > > module Bio > > class BlastDB > > include Enumerable > > FASTACMD = 'fastacmd' > > def initialize(db) > @database = db > end > > def get_by_id(id) > cmd = "#{FASTACMD} -d #{@database} -s #{id}" > begin > inn, out, err = Open3.popen3(cmd) > result = out.read > err_msg = err.read > fas = Bio::FastaFormat.new(result) > return fas > rescue > raise "[Error] command execution failed : #{cmd}\n#{err_msg}" > ensure > inn.close; out.close; err.close > end > end > > def get_by_ids(ids) # ids: Array object > cmd = "#{FASTACMD} -d #{@database} -s #{ids.join(',')}" > begin > inn, out, err = Open3.popen3(cmd) > err_msg = err.read > fas_set = Bio::FlatFile.new(Bio::FastaFormat, out).to_a > return fas_set > rescue > raise "[Error] command execution failed : #{cmd}\n#{err_msg}" > ensure > inn.close; out.close; err.close > end > end > > def each_entry > cmd = "#{FASTACMD} -d #{@database} -D T" > io = IO.popen(cmd) > f = Bio::FlatFile.new(Bio::FastaFormat, io) > f.each_entry do |e| > yield e > end > io.close > end > > alias :each :each_entry > > end > > end > > if __FILE__ == $0 > #test code > > bdb = Bio::BlastDB.new("/db/myblastdb") > > # Retrieve one sequence > puts bdb.get_by_id("P25724") > > # Retrieve one more sequences > bdb.get_by_ids(["P25724", "AAB59189", "AAA28715"]).each do |fas| > puts fas > end > > # Iterate all sequences > bdb.each do |fas| > p [fas.definition[0..30], fas.seq.size] > end > > end > > > -- > --- > Shuji SHIGENOBU, Ph.D. > shige@nibb.ac.jp > > National Institutes of Natural Sciences > Okazaki Institute for Integrative Bioscience > National Institute for Basic Biology > > Higashiyama, Myodaiji, Okazaki 444-8787 > Japan > > Phone: +81-564-59-5876 > Fax: +81-564-59-5879 > From tomoakin @ kenroku.kanazawa-u.ac.jp Tue Apr 26 21:46:14 2005 From: tomoakin @ kenroku.kanazawa-u.ac.jp (Tomoaki NISHIYAMA) Date: Tue Apr 26 21:39:09 2005 Subject: [BioRuby-ja] Re: Open3 In-Reply-To: <426E7CAA.7060809@nibb.ac.jp> References: <1f1a40e65b7afa20489b5fd3a63232cc@hgc.jp> <200504230456.AA02213@naozane.develop.zool.kyoto-u.ac.jp> <426E7CAA.7060809@nibb.ac.jp> Message-ID: こんにちは、 基生研から金沢大学に移った西山です。 > もちろんこれをRuby scriptの中で使いたいので,Rubyでwrapperを作りました. > 以下に主要部分を書いておきます.(変なところがあったら皆さんつっこんで下 > さい). プログラムが変というよりは、現在のrubyの仕様がいまいちなのだと思うのですが、 > inn, out, err = Open3.popen3(cmd) の前に、STDOUT.flushを入れておかないと、STDOUTのバッファに 残っていたデータがあると2重に出力されてしまうと思われます。 原理的には、STDERRもですが、 STDERRは普通バッファリングしないので大丈夫でしょう。 これから、この件で、ruby-devの方にメールを書こうと思っています。 簡単なテストプログラムをつけます。 #!/usr/local/bin/ruby require 'open3' print "aa" a,b,c =Open3.popen3("/bin/true") print "bb\n" sleep(0.1) print "cc\n" -- 西山智明 金沢大学学際科学実験センター From shige @ nibb.ac.jp Wed Apr 27 00:38:16 2005 From: shige @ nibb.ac.jp (Shuji SHIGENOBU) Date: Wed Apr 27 00:31:25 2005 Subject: [BioRuby-ja] fastacmd wrapper In-Reply-To: References: <1f1a40e65b7afa20489b5fd3a63232cc@hgc.jp> <200504230456.AA02213@naozane.develop.zool.kyoto-u.ac.jp> <426E7CAA.7060809@nibb.ac.jp> Message-ID: <426F1738.4090206@nibb.ac.jp> こんにちは,重信です. fastacmd wrapperのクラスに関して,片山さん,西山さんコメントありがとうご ざいました. なんだか,メール送信の際スクリプトのインデントが全部除去されて,見にくい ソースになってしまいました.どうも失礼しました.(Thunderbirdってこうい う仕様?誰か回避策知ってたら教えて下さい.) BioRubyに取り込んでいただく件はOKです. 先のメールに書いたスクリプトは最小限のものですので,オリジナルのスクリプ トに西山さんに指摘して頂いたopen3の件を修正し簡単なドキュメントを添えて 後ほどお送りしたいと思います.メソッド名やネームスペースなどはBioRuby流 に変更していただいて構いません. WU-BLASTのxdgetもfastacmdと同様な機能を持っているプログラムだそうで,片 山さんのコメントにあったHMMERのsfetchもぱっと見た感じ同様もしくはより高 機能なシークエンス取得プログラムのようですね.将来的にはこれらのwrapper クラスを共通のメソッドで設計するときれいかなと思います. あと,bioregistryでアクセスできると便利かもしれません. 重信 秀治 -- --- Shuji SHIGENOBU, Ph.D. shige@nibb.ac.jp National Institutes of Natural Sciences Okazaki Institute for Integrative Bioscience National Institute for Basic Biology Higashiyama, Myodaiji, Okazaki 444-8787 Japan Phone: +81-564-59-5876 Fax: +81-564-59-5879 From ngoto @ gen-info.osaka-u.ac.jp Wed Apr 27 04:56:46 2005 From: ngoto @ gen-info.osaka-u.ac.jp (GOTO Naohisa) Date: Wed Apr 27 04:51:08 2005 Subject: [BioRuby-ja] Re: =?ISO-2022-JP?B?GyRCJV4layVBJVUlISU5JT8bKEI=?= =?ISO-2022-JP?B?GyRCJE48aCRqMDckJCRHPEFMZBsoQjIbJEJFQBsoQg==?= In-Reply-To: <455094d2cfb4f35d6a32aa7e35df0e3e@hgc.jp> References: <1f1a40e65b7afa20489b5fd3a63232cc@hgc.jp> <200504230456.AA02213@naozane.develop.zool.kyoto-u.ac.jp> <455094d2cfb4f35d6a32aa7e35df0e3e@hgc.jp> Message-ID: <200504270849.j3R8nofY015995@portal.open-bio.org> On Sun, 24 Apr 2005 03:04:06 +0900 Toshiaki Katayama wrote: > マルチファスタのクエリー自体は投げられるようですが、 > 結果を受け取るところでマルチを想定していないですね。 > > bio/appl/blast.rb: > def parse_result(data) > Report.new(data, @parser) > end > > ここを Bio::FlatFile がやっているような感じに直せば > いいような気がしますが、どうでしょうね。>後藤さん? BLASTのデフォルトフォーマットはBio::FlatFile対応なので、むしろ Bio::FlatFile に処理を丸投げするほうがよいと思います。 ただし XMLや -m 8 (タブ区切り) は今のところ Bio::FlatFile未対応 なので厄介です。対応予定はありますが予定は未定です。 -- 後藤 直久 ngoto@gen-info.osaka-u.ac.jp 大阪大学 微生物病研究所 遺伝情報実験センター ゲノム情報解析分野 (安永研究室)