[BioRuby-ja] gc_percentをfloatに
Toshiaki Katayama
ktym @ hgc.jp
2006年 6月 14日 (水) 05:59:01 UTC
二階堂さん
元々はそんな感じになっていましたが、有効数字や ATGC 以外の文字があった時の
扱いなどを簡単には決められないので percent という名前の通り所詮は概算値である
という意味合いで整数値を返すように変更しました(それとともに gc メソッドは
無くしました)。
http://code.open-bio.org/cgi-bin/viewcvs/viewcvs.cgi/bioruby/lib/bio/sequence.rb.diff?r1=0.42&r2=0.43&cvsroot=bioruby
精度が必要な場合は composition メソッドの返り値から自分の基準で計算して
もらうのが良いと思います。
片山
On 2006/06/14, at 14:21, Itoshi NIKAIDO wrote:
> にかいどうです。
>
> 提案です。
>
> bio/sequence/na.rb の gc_percent ですが、float を返したほうが
> 良いのではないでしょうか。PCRプライマーなどオリゴの設計の
> 際には小数点第一位あたりが大事になってきます。実際に実験条件を
> 小数点第一位あたりで振るのは日常的ですので、floatのほうが現場に
> 合う気がします。如何でしょうか?
>
> 以下のコードを
> gc = 100.0 * gc / (at + gc)
> とするだけですけど。
>
> # Calculate the ratio of GC / ATGC bases as a percentage rounded to
> # the nearest whole number.
> #
> # s = Bio::Sequence::NA.new('atggcgtga')
> # puts s.gc_percent #=> 55
> # ---
> # *Returns*:: Fixnum
> def gc_percent
> count = self.composition
> at = count['a'] + count['t'] + count['u']
> gc = count['g'] + count['c']
> gc = 100 * gc / (at + gc)
> return gc
> end
>
> --
> Itoshi NIKAIDO, Ph.D.
> FF20 8296 ED6F D9E5 7D05 8A0F 65D8 C2F5 C8D7 2CE2
BioRuby-ja メーリングリストの案内