Sha256: fb4b7f03a8a6dcc4f14f97c4340aecdf00466f048c322ef3200a5e25870a8ea7
Contents?: true
Size: 695 Bytes
Versions: 1
Compression:
Stored size: 695 Bytes
Contents
require 'bioinform/support' require 'bioinform/data_models/pm' require 'bioinform/data_models/ppm' require 'bioinform/data_models/pwm' module Bioinform class PCM < PM def count matrix.first.inject(&:+) end def to_pwm(pseudocount = Math.log(count)) mat = each_position.map do |pos| pos.each_index.map do |ind| Math.log((pos[ind] + probability[ind] * pseudocount) / (probability[ind]*(count + pseudocount)) ) end end PWM.new(matrix: mat, name: name) end def to_ppm mat = each_position.map{|pos| pos.map{|el| el.to_f / count }} PPM.new(matrix: mat, name: name) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
bioinform-0.1.5 | lib/bioinform/data_models/pcm.rb |