class BioDSL::Hamming
Class for calculating Hamming
distance.
Public Class Methods
check_strings(str1, str2)
click to toggle source
Check that string lengths are equal.
@param str1 [String] String
1. @param str2 [String] String
2.
@raise [HammingError] if string lengths mismatch.
# File lib/BioDSL/hamming.rb, line 62 def self.check_strings(str1, str2) return if str1.length == str2.length fail HammingError, "bad string lengths: #{str1.length} != #{str2.length}" end
distance(str1, str2, options = {})
click to toggle source
Class method for calculating the Hamming
distance between two given strings optionally allowing for IUPAC ambiguity codes.
@param str1 [String] String
1. @param str2 [String] String
2. @param options [Hash] Options hash. @option options [Boolean] :ambiguity
# File lib/BioDSL/hamming.rb, line 44 def self.distance(str1, str2, options = {}) check_strings(str1, str2) hd = new if options[:ambiguity] hd.hamming_distance_ambiguity_C(str1, str2, str1.length) else hd.hamming_distance_C(str1, str2, str1.length) end end