de.lmu.ifi.dbs.elki.distance.distancefunction.correlation
Class WeightedPearsonCorrelationDistanceFunction

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.distance.distancefunction.AbstractPrimitiveDistanceFunction<NumberVector<?,?>,DoubleDistance>
      extended by de.lmu.ifi.dbs.elki.distance.distancefunction.AbstractVectorDoubleDistanceFunction
          extended by de.lmu.ifi.dbs.elki.distance.distancefunction.correlation.WeightedPearsonCorrelationDistanceFunction
All Implemented Interfaces:
DistanceFunction<NumberVector<?,?>,DoubleDistance>, PrimitiveDistanceFunction<NumberVector<?,?>,DoubleDistance>, PrimitiveDoubleDistanceFunction<NumberVector<?,?>>, InspectionUtilFrequentlyScanned, Parameterizable

public class WeightedPearsonCorrelationDistanceFunction
extends AbstractVectorDoubleDistanceFunction

Pearson correlation distance function for feature vectors. The Pearson correlation distance is computed from the Pearson correlation coefficient r as: 1-r. Hence, possible values of this distance are between 0 and 2. The distance between two vectors will be low (near 0), if their attribute values are dimension-wise strictly positively correlated, it will be high (near 2), if their attribute values are dimension-wise strictly negatively correlated. For Features with uncorrelated attributes, the distance value will be intermediate (around 1). This variation is for weighted dimensions.


Field Summary
private  double[] weights
          Weights
 
Constructor Summary
WeightedPearsonCorrelationDistanceFunction(double[] weights)
          Provides a PearsonCorrelationDistanceFunction.
 
Method Summary
 double doubleDistance(NumberVector<?,?> v1, NumberVector<?,?> v2)
          Computes the Pearson correlation distance for two given feature vectors.
 boolean equals(Object obj)
           
 
Methods inherited from class de.lmu.ifi.dbs.elki.distance.distancefunction.AbstractVectorDoubleDistanceFunction
distance, getDistanceFactory, getInputTypeRestriction
 
Methods inherited from class de.lmu.ifi.dbs.elki.distance.distancefunction.AbstractPrimitiveDistanceFunction
instantiate, isMetric, isSymmetric
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface de.lmu.ifi.dbs.elki.distance.distancefunction.DistanceFunction
instantiate, isMetric, isSymmetric
 

Field Detail

weights

private double[] weights
Weights

Constructor Detail

WeightedPearsonCorrelationDistanceFunction

public WeightedPearsonCorrelationDistanceFunction(double[] weights)
Provides a PearsonCorrelationDistanceFunction.

Parameters:
weights - Weights
Method Detail

doubleDistance

public double doubleDistance(NumberVector<?,?> v1,
                             NumberVector<?,?> v2)
Computes the Pearson correlation distance for two given feature vectors. The Pearson correlation distance is computed from the Pearson correlation coefficient r as: 1-r. Hence, possible values of this distance are between 0 and 2.

Parameters:
v1 - first feature vector
v2 - second feature vector
Returns:
the Pearson correlation distance for two given feature vectors v1 and v2

equals

public boolean equals(Object obj)
Overrides:
equals in class Object

Release 0.4.0 (2011-09-20_1324)