Package elki.distance.minkowski
Class SparseLPNormDistance
- java.lang.Object
-
- elki.distance.minkowski.SparseLPNormDistance
-
- All Implemented Interfaces:
Distance<SparseNumberVector>,Norm<SparseNumberVector>,PrimitiveDistance<SparseNumberVector>
- Direct Known Subclasses:
SparseEuclideanDistance,SparseManhattanDistance,SparseMaximumDistance
public class SparseLPNormDistance extends java.lang.Object implements PrimitiveDistance<SparseNumberVector>, Norm<SparseNumberVector>
Lp-Norm, optimized forSparseNumberVectors.The Lp distance is defined as: \[ L_p(\vec{x},\vec{y}) := \left(\sum\nolimits_i (x_i-y_i)\right)^{1/p} \]
- Since:
- 0.5.0
- Author:
- Erich Schubert
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classSparseLPNormDistance.ParParameterizer
-
Constructor Summary
Constructors Constructor Description SparseLPNormDistance(double p)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description doubledistance(SparseNumberVector v1, SparseNumberVector v2)Computes the distance between two given DatabaseObjects according to this distance function.SimpleTypeInformation<? super SparseNumberVector>getInputTypeRestriction()Get the input data type of the function.booleanisMetric()Is this distance function metric (satisfy the triangle inequality)doublenorm(SparseNumberVector v1)Compute the norm of object obj.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface elki.distance.Distance
isSquared, isSymmetric
-
Methods inherited from interface elki.distance.PrimitiveDistance
instantiate
-
-
-
-
Method Detail
-
distance
public double distance(SparseNumberVector v1, SparseNumberVector v2)
Description copied from interface:PrimitiveDistanceComputes the distance between two given DatabaseObjects according to this distance function.- Specified by:
distancein interfacePrimitiveDistance<SparseNumberVector>- Parameters:
v1- first DatabaseObjectv2- second DatabaseObject- Returns:
- the distance between two given DatabaseObjects according to this distance function
-
norm
public double norm(SparseNumberVector v1)
Description copied from interface:NormCompute the norm of object obj.- Specified by:
normin interfaceNorm<SparseNumberVector>- Parameters:
v1- Object- Returns:
- Norm
-
getInputTypeRestriction
public SimpleTypeInformation<? super SparseNumberVector> getInputTypeRestriction()
Description copied from interface:DistanceGet the input data type of the function.- Specified by:
getInputTypeRestrictionin interfaceDistance<SparseNumberVector>- Specified by:
getInputTypeRestrictionin interfacePrimitiveDistance<SparseNumberVector>- Returns:
- Type restriction
-
isMetric
public boolean isMetric()
Description copied from interface:DistanceIs this distance function metric (satisfy the triangle inequality)- Specified by:
isMetricin interfaceDistance<SparseNumberVector>- Returns:
truewhen metric.
-
-