Distance functions to compare vectors.
$ npm i ml-distance
euclidean(p, q)
Returns the euclidean distance between vectors p and q
manhattan(p, q)
Returns the city block distance between vectors p and q
minkowski(p, q, d)
Returns the Minkowski distance between vectors p and q for order d
chebyshev(p, q)
Returns the Chebyshev distance between vectors p and q
sorensen(p, q)
Returns the Sørensen distance between vectors p and q
gower(p, q)
Returns the Gower distance between vectors p and q
soergel(p, q)
Returns the Soergel distance between vectors p and q
kulczynski(p, q)
Returns the Kulczynski distance between vectors p and q
canberra(p, q)
Returns the Canberra distance between vectors p and q
lorentzian(p, q)
Returns the Lorentzian distance between vectors p and q
intersection(p, q)
Returns the Intersection distance between vectors p and q
waveHedges(p, q)
Returns the Wave Hedges distance between vectors p and q
czekanowski(p, q)
Returns the Czekanowski distance between vectors p and q
motyka(p, q)
Returns the Motyka distance between vectors p and q
Note: distance between 2 identical vectors is 0.5 !
ruzicka(p, q)
Returns the Ruzicka similarity between vectors p and q
tanimoto(p, q, [bitVector])
Returns the Tanimoto distance between vectors p and q, and accepts the bitVector use, see the test case for an example
innerProduct(p, q)
Returns the Inner Product similarity between vectors p and q
harmonicMean(p, q)
Returns the Harmonic mean similarity between vectors p and q
cosine(p, q)
Returns the Cosine similarity between vectors p and q
kumarHassebrook(p, q)
Returns the Kumar-Hassebrook similarity between vectors p and q
jaccard(p, q)
Returns the Jaccard distance between vectors p and q
dice(p,q)
Returns the Dice distance between vectors p and q
fidelity(p, q)
Returns the Fidelity similarity between vectors p and q
bhattacharyya(p, q)
Returns the Bhattacharyya distance between vectors p and q
hellinger(p, q)
Returns the Hellinger distance between vectors p and q
matusita(p, q)
Returns the Matusita distance between vectors p and q
squaredChord(p, q)
Returns the Squared-chord distance between vectors p and q
squaredEuclidean(p, q)
Returns the squared euclidean distance between vectors p and q
pearson(p, q)
Returns the Pearson distance between vectors p and q
neyman(p, q)
Returns the Neyman distance between vectors p and q
squared(p, q)
Returns the Squared distance between vectors p and q
probabilisticSymmetric(p, q)
Returns the Probabilistic Symmetric distance between vectors p and q
divergence(p, q)
Returns the Divergence distance between vectors p and q
clark(p, q)
Returns the Clark distance between vectors p and q
additiveSymmetric(p, q)
Returns the Additive Symmetric distance between vectors p and q
kullbackLeibler(p, q)
Returns the Kullback-Leibler distance between vectors p and q
jeffreys(p, q)
Returns the Jeffreys distance between vectors p and q
kdivergence(p, q)
Returns the K divergence distance between vectors p and q
topsoe(p, q)
Returns the Topsøe distance between vectors p and q
jensenShannon(p, q)
Returns the Jensen-Shannon distance between vectors p and q
jensenDifference(p, q)
Returns the Jensen difference distance between vectors p and q
taneja(p, q)
Returns the Taneja distance between vectors p and q
kumarJohnson(p, q)
Returns the Kumar-Johnson distance between vectors p and q
avg(p, q)
Returns the average of city block and Chebyshev distances between vectors p and q
intersection(p, q)
Returns the Intersection similarity between vectors p and q
czekanowski(p, q)
Returns the Czekanowski similarity between vectors p and q
motyka(p, q)
Returns the Motyka similarity between vectors p and q
kulczynski(p, q)
Returns the Kulczynski similarity between vectors p and q
squaredChord(p, q)
Returns the Squared-chord similarity between vectors p and q
jaccard(p, q)
Returns the Jaccard similarity between vectors p and q
dice(p, q)
Returns the Dice similarity between vectors p and q
tanimoto(p, q, [bitVector])
Returns the Tanimoto similarity between vectors p and q, and accepts the bitVector use, see the test case for an example
tree(a,b, from, to, [options])
Refer to ml-tree-similarity
A new metric should normally be in its own file in the src/dist directory. There should be a corresponding test file in test/dist.
The metric should be then added in the exports of src/index.js with a relatively small but understandable name (use camelCase).
It should also be added to this README with either a link to the formula or an inline description.