de.lmu.ifi.dbs.elki.math.linearalgebra.pca
Class AbstractCovarianceMatrixBuilder<V extends NumberVector<? extends V,?>>

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.math.linearalgebra.pca.AbstractCovarianceMatrixBuilder<V>
Type Parameters:
V - Vector class in use
All Implemented Interfaces:
CovarianceMatrixBuilder<V>, InspectionUtilFrequentlyScanned, Parameterizable
Direct Known Subclasses:
StandardCovarianceMatrixBuilder, WeightedCovarianceMatrixBuilder

public abstract class AbstractCovarianceMatrixBuilder<V extends NumberVector<? extends V,?>>
extends Object
implements Parameterizable, CovarianceMatrixBuilder<V>

Abstract class with the task of computing a Covariance matrix to be used in PCA. Mostly the specification of an interface.


Constructor Summary
AbstractCovarianceMatrixBuilder()
           
 
Method Summary
 Matrix processDatabase(Relation<? extends V> database)
          Compute Covariance Matrix for a complete database
abstract  Matrix processIds(DBIDs ids, Relation<? extends V> database)
          Compute Covariance Matrix for a collection of database IDs
<D extends NumberDistance<?,?>>
Matrix
processQueryResults(Collection<DistanceResultPair<D>> results, Relation<? extends V> database)
          Compute Covariance Matrix for a QueryResult Collection By default it will just collect the ids and run processIds
<D extends NumberDistance<?,?>>
Matrix
processQueryResults(Collection<DistanceResultPair<D>> results, Relation<? extends V> database, int k)
          Compute Covariance Matrix for a QueryResult Collection By default it will just collect the ids and run processIds
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractCovarianceMatrixBuilder

public AbstractCovarianceMatrixBuilder()
Method Detail

processDatabase

public Matrix processDatabase(Relation<? extends V> database)
Description copied from interface: CovarianceMatrixBuilder
Compute Covariance Matrix for a complete database

Specified by:
processDatabase in interface CovarianceMatrixBuilder<V extends NumberVector<? extends V,?>>
Parameters:
database - the database used
Returns:
Covariance Matrix

processIds

public abstract Matrix processIds(DBIDs ids,
                                  Relation<? extends V> database)
Description copied from interface: CovarianceMatrixBuilder
Compute Covariance Matrix for a collection of database IDs

Specified by:
processIds in interface CovarianceMatrixBuilder<V extends NumberVector<? extends V,?>>
Parameters:
ids - a collection of ids
database - the database used
Returns:
Covariance Matrix

processQueryResults

public <D extends NumberDistance<?,?>> Matrix processQueryResults(Collection<DistanceResultPair<D>> results,
                                                                  Relation<? extends V> database,
                                                                  int k)
Description copied from interface: CovarianceMatrixBuilder
Compute Covariance Matrix for a QueryResult Collection By default it will just collect the ids and run processIds

Specified by:
processQueryResults in interface CovarianceMatrixBuilder<V extends NumberVector<? extends V,?>>
Parameters:
results - a collection of QueryResults
database - the database used
k - the number of entries to process
Returns:
Covariance Matrix

processQueryResults

public final <D extends NumberDistance<?,?>> Matrix processQueryResults(Collection<DistanceResultPair<D>> results,
                                                                        Relation<? extends V> database)
Description copied from interface: CovarianceMatrixBuilder
Compute Covariance Matrix for a QueryResult Collection By default it will just collect the ids and run processIds

Specified by:
processQueryResults in interface CovarianceMatrixBuilder<V extends NumberVector<? extends V,?>>
Parameters:
results - a collection of QueryResults
database - the database used
Returns:
Covariance Matrix

Release 0.4.0 (2011-09-20_1324)