Object

com.github.vickumar1981.stringdistance

StringDistance

Related Doc: package stringdistance

Permalink

object StringDistance

Main class to organize functionality of different string distance algorithms

import com.github.vickumar1981.stringdistance.StringDistance._
import com.github.vickumar1981.stringdistance.impl.{ConstantGap, LinearGap}

// Scores between strings
val cosSimilarity: Double = Cosine.score("hello", "chello")
val damerau: Double = Damerau.score("martha", "marhta")
val diceCoefficient: Double = DiceCoefficient.score("martha", "marhta")
val hamming: Double = Hamming.score("martha", "marhta")
val jaccard: Double = Jaccard.score("karolin", "kathrin", 1)
val jaro: Double = Jaro.score("martha", "marhta")
val jaroWinkler: Double = JaroWinkler.score("martha", "marhta", 0.1)
val levenshtein: Double = Levenshtein.score("martha", "marhta")
val needlemanWunsch: Double = NeedlemanWunsch.score("martha", "marhta", ConstantGap())
val ngramSimilarity: Double = NGram.score("karolin", "kathrin", 1)
val bigramSimilarity: Double = NGram.score("karolin", "kathrin", 2)
val overlap: Double = Overlap.score("karolin", "kathrin", 1)
val smithWaterman: Double = SmithWaterman.score("martha", "marhta", (LinearGap(gapValue = -1), Integer.MAX_VALUE))
val smithWatermanGotoh: Double = SmithWatermanGotoh.score("martha", "marhta", ConstantGap())
val tversky: Double = Tversky.score("karolin", "kathrin", 0.5)

// Distances between strings
val damerauDist: Int = Damerau.distance("martha", "marhta")
val hammingDist: Int = Hamming.distance("martha", "marhta")
val levenshteinDist: Int = Levenshtein.distance("martha", "marhta")
val longestCommonSubSeq: Int = LongestCommonSeq.distance("martha", "marhta")
val ngramDist: Int = NGram.distance("karolin", "kathrin", 1)
val bigramDist: Int = NGram.distance("karolin", "kathrin", 2)

// return a List[String] of ngram tokens
val tokens = NGram.tokens("martha", 2) // List("ma", "ar", "rt", "th", "ha")
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. StringDistance
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. object Cosine extends StringMetric[CosineAlgorithm]

    Permalink
  5. object Damerau extends StringMetric[DamerauLevenshteinAlgorithm]

    Permalink
  6. object DiceCoefficient extends StringMetric[DiceCoefficientAlgorithm]

    Permalink
  7. object Hamming extends StringMetric[HammingAlgorithm]

    Permalink
  8. object Jaccard extends WeightedStringMetric[JaccardAlgorithm, Int]

    Permalink
  9. object Jaro extends StringMetric[JaroAlgorithm]

    Permalink
  10. object JaroWinkler extends WeightedStringMetric[JaroWinklerAlgorithm, Double]

    Permalink
  11. object Levenshtein extends StringMetric[LevenshteinAlgorithm]

    Permalink
  12. object LongestCommonSeq extends StringMetric[LongestCommonSeqAlorithm]

    Permalink
  13. object NGram extends WeightedStringMetric[NGramAlgorithm, Int] with NGramTokenizer

    Permalink
  14. object NeedlemanWunsch extends WeightedStringMetric[NeedlemanWunschAlgorithm, ConstantGap]

    Permalink
  15. object Overlap extends WeightedStringMetric[OverlapAlgorithm, Int]

    Permalink
  16. object SmithWaterman extends WeightedStringMetric[SmithWatermanAlgorithm, (Gap, Int)]

    Permalink
  17. object SmithWatermanGotoh extends WeightedStringMetric[SmithWatermanGotohAlgorithm, ConstantGap]

    Permalink
  18. object Tversky extends WeightedStringMetric[TverskyAlgorithm, Double]

    Permalink
  19. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  20. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  21. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  22. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  23. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  24. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  25. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  26. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  27. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  28. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  29. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  30. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  31. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  32. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  33. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  34. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped