stringDist            package:Biostrings            R Documentation

String Distance/Alignment Score Matrix

Description:

     Computes the Levenshtein edit distance or pairwise alignment score
     matrix for a set of strings.

Usage:

     stringDist(x, method = "levenshtein", ignoreCase = FALSE, diag = FALSE, upper = FALSE, ...)
     ## S4 method for signature 'XStringSet':
     stringDist(x, method = "levenshtein", ignoreCase = FALSE, diag = FALSE,
                        upper = FALSE, type = "global", quality = PhredQuality(22L),
                        substitutionMatrix = NULL, fuzzyMatrix = NULL, gapOpening = 0,
                        gapExtension = -1)
     ## S4 method for signature 'QualityScaledXStringSet':
     stringDist(x, method = "quality", ignoreCase = FALSE,
                        diag = FALSE, upper = FALSE, type = "global", substitutionMatrix = NULL,
                        fuzzyMatrix = NULL, gapOpening = 0, gapExtension = -1)

Arguments:

       x: a character vector or an 'XStringSet' object.

  method: calculation method. One of '"levenshtein"', '"hamming"',
          '"quality"', or '"substitutionMatrix"'.

ignoreCase: logical value indicating whether to ignore case during
          scoring.

    diag: logical value indicating whether the diagonal of the matrix
          should be printed by 'print.dist'.

   upper: logical value indicating whether the upper triangle of the
          matrix should be printed by 'print.dist'.

    type: (applicable when 'method = "quality"' or 'method =
          "substitutionMatrix"'). type of alignment. One of '"global"',
          '"local"', and '"overlap"', where '"global"' = align whole
          strings with end gap penalties, '"local"' = align string
          fragments, '"overlap"' = align whole strings without end gap
          penalties.

 quality: (applicable when 'method = "quality"'). object of class
          'XStringQuality' representing the quality scores for 'x' that
          are used in a quality-based method for generating a
          substitution matrix.

substitutionMatrix: (applicable when 'method = "substitutionMatrix"').
          symmetric matrix representing the fixed substitution scores
          in the alignment.

fuzzyMatrix: (applicable when 'method = "quality"'). fuzzy match matrix
          for quality-based alignments. It takes values between 0 and
          1; where 0 is an unambiguous mismatch, 1 is an unambiguous
          match, and values in between represent a fraction of
          "matchiness".

gapOpening: (applicable when 'method = "quality"' or 'method =
          "substitutionMatrix"'). penalty for opening a gap in the
          alignment.

gapExtension: (applicable when 'method = "quality"' or 'method =
          "substitutionMatrix"'). penalty for extending a gap in the
          alignment

     ...: optional arguments to generic function to support additional
          methods.

Details:

     When 'method = "hamming"', uses the underlying 'neditStartingAt'
     code to calculate the distances, where the Hamming distance is
     defined as the number of substitutions between two strings of
     equal length. Otherwise, uses the underlying 'pairwiseAlignment'
     code to compute the distance/alignment score matrix.

Value:

     Returns an object of class '"dist"'.

Author(s):

     P. Aboyoun

See Also:

     dist, agrep, pairwiseAlignment, substitution.matrices

Examples:

       stringDist(c("lazy", "HaZy", "crAzY"))
       stringDist(c("lazy", "HaZy", "crAzY"), ignoreCase = TRUE)

       data(phiX174Phage)
       plot(hclust(stringDist(phiX174Phage), method = "single"))

       data(srPhiX174)
       stringDist(srPhiX174[1:4])
       stringDist(srPhiX174[1:4], method = "quality",
                  quality = SolexaQuality(quPhiX174[1:4]),
                  gapOpening = -10, gapExtension = -4)

