[BioRuby-ja] マルチファスタの取り扱いで質問2点

n @ bioruby.org n @ bioruby.org
2005年 4月 23日 (土) 03:11:26 EDT


川島さん


なかおです。


From: takeshi kawashima <kawashima @ develop.zool.kyoto-u.ac.jp>
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 になっています。

では
-

-

中尾 光輝   <n @ bioruby.org>






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