[BioRuby-ja] bioruby の.naseq メソッド

takeshi kawashima kawashima @ develop.zool.kyoto-u.ac.jp
2004年 2月 3日 (火) 03:49:24 EST


川島武士@京大動物です。

質問です。

Tutorialのサンプルメソッド
====================================================================
seq=Bio::Sequence::NA.new("atctatacgtgatcgtagctagtcgatcgtagctagcta")
i = 1
remainder = seq.window_search(60, 60) do |subseq|
  puts subseq.to_fasta("segment #{i}", 60)
  i += 1
end
puts remainder.to_fasta("segment #{i}", 60)
=====================================================================

とてもべんりで、使っています。
しかし、マルチファスタを読み込んで同じことをしようと思い、

m = Bio::FlatFile.new(Bio::FastaFormat, ARGF)
m.each_entry do |x|
  i = 1
  remainder = x.naseq.window_search(60, 60) do |subseq|
    puts subseq.to_fasta("segment #{i}", 60)
    i += 1
  end
  puts remainder.to_fasta("segment #{i}", 60)      #####<=ここ
end

とすると、ループの最後の putsの行でエラーがでてしまいます。

remainderがStringクラスだからのようですが、
うまい回避方法はないでしょうか?
今は、
tmpseq = Bio::Sequence.new("#{remainder}")
puts tmpseq.to_fasta("segment #{i}", 60)     
としてます。

====================================
川島 武士

  京都大学・大学院理学研究科
  分子・進化発生生物学研究室
kawashima @ develop.zool.kyoto-u.ac.jp
====================================



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