All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.TKnudsen.ComplexDataObject.model.distanceMeasure.featureVector.EuclideanDistanceMeasure Maven / Gradle / Ivy

package com.github.TKnudsen.ComplexDataObject.model.distanceMeasure.featureVector;

import java.util.List;

import com.github.TKnudsen.ComplexDataObject.data.features.numericalData.NumericalFeature;
import com.github.TKnudsen.ComplexDataObject.data.features.numericalData.NumericalFeatureVector;

/**
 * 

* Title: EuclideanDistanceMeasure *

* *

* Description: Euclidean's Distance Measure for NumericalFeatureVectors *

* *

* Copyright: Copyright (c) 2012-2017 *

* * @author Juergen Bernard */ public class EuclideanDistanceMeasure extends NumericalFeatureVectorDistanceMeasure { /** * */ private static final long serialVersionUID = -2728016822703430883L; @Override public double getDistance(NumericalFeatureVector o1, NumericalFeatureVector o2) { List featuresO1 = o1.getVectorRepresentation(); List featuresO2 = o2.getVectorRepresentation(); double d = 0; for (int i = 0; i < Math.min(featuresO1.size(), featuresO2.size()); i++) d += Math.pow(featuresO1.get(i).doubleValue() - featuresO2.get(i).doubleValue(), 2); d = Math.sqrt(d); return d; } @Override public String getName() { return "EuclideanDistanceMeasure"; } @Override public String getDescription() { return "Euclidean distance deasure for NumericalFeatureVectors"; } @Override public boolean equals(Object o) { if (o == this) return true; if (!(o instanceof EuclideanDistanceMeasure)) return false; return true; } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy