Environment for
DeveLoping
KDD-Applications
Supported by Index-Structures

de.lmu.ifi.dbs.elki.data
Class DoubleVector

java.lang.Object
  extended by de.lmu.ifi.dbs.elki.logging.AbstractLoggable
      extended by de.lmu.ifi.dbs.elki.data.AbstractDatabaseObject
          extended by de.lmu.ifi.dbs.elki.data.NumberVector<V,N>
              extended by de.lmu.ifi.dbs.elki.data.RealVector<DoubleVector,Double>
                  extended by de.lmu.ifi.dbs.elki.data.DoubleVector
All Implemented Interfaces:
WekaObject<WekaNumericAttribute>, DatabaseObject, FeatureVector<DoubleVector,Double>, SpatialComparable, SpatialObject, Loggable
Direct Known Subclasses:
ParameterizationFunction

public class DoubleVector
extends RealVector<DoubleVector,Double>

A DoubleVector is to store real values approximately as double values.

Author:
Arthur Zimek

Field Summary
private  double[] values
          Keeps the values of the real vector
 
Fields inherited from class de.lmu.ifi.dbs.elki.data.NumberVector
ATTRIBUTE_SEPARATOR
 
Fields inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable
debug
 
Constructor Summary
DoubleVector(double[] values)
          Provides a DoubleVector consisting of the given double values.
DoubleVector(Double[] values)
          Provides a DoubleVector consisting of the given double values.
DoubleVector(List<Double> values)
          Provides a feature vector consisting of double values according to the given Double values.
DoubleVector(Matrix columnMatrix)
          Expects a matrix of one column.
 
Method Summary
 Vector getColumnVector()
          Returns a Vector representing in one column and getDimensionality() rows the values of this FeatureVector.
 int getDimensionality()
          The dimensionality of the vector space whereof this FeatureVector is an element.
 Matrix getRowVector()
          Returns a Matrix representing in one row and getDimensionality() columns the values of this FeatureVector.
 Double getValue(int dimension)
          Returns the value in the specified dimension.
 DoubleVector multiplicate(double k)
          Returns a new FeatureVector that is the result of a scalar multiplication with the given scalar.
 DoubleVector negativeVector()
          Returns the additive inverse to this FeatureVector.
 DoubleVector newInstance(double[] values)
          Returns a new RealVector of N for the given values.
 DoubleVector nullVector()
          Provides a null vector of the same Feature Vector Space as this FeatureVector (that is, of the same dimensionality).
 DoubleVector plus(DoubleVector fv)
          Returns a new FeatureVector that is the sum of this FeatureVector and the given FeatureVector.
 DoubleVector randomInstance(Double min, Double max, Random random)
          Returns a FeatureVector of T with random values between min and max.
 DoubleVector randomInstance(Random random)
          Returns a new DoubleVector with values between 0 and 1.
 String toString()
          Returns a String representation of the FeatureVector as a line that is suitable to be printed in a sequential file.
 
Methods inherited from class de.lmu.ifi.dbs.elki.data.NumberVector
equals, getAttributes, getMax, getMin, newInstance
 
Methods inherited from class de.lmu.ifi.dbs.elki.data.AbstractDatabaseObject
getID, setID
 
Methods inherited from class de.lmu.ifi.dbs.elki.logging.AbstractLoggable
debugFine, debugFiner, debugFinest, exception, message, progress, progress, progress, verbose, verbose, warning
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface de.lmu.ifi.dbs.elki.data.DatabaseObject
getID, setID
 
Methods inherited from interface de.lmu.ifi.dbs.elki.index.tree.spatial.SpatialObject
getID
 

Field Detail

values

private double[] values
Keeps the values of the real vector

Constructor Detail

DoubleVector

public DoubleVector(List<Double> values)
Provides a feature vector consisting of double values according to the given Double values.

Parameters:
values - the values to be set as values of the real vector

DoubleVector

public DoubleVector(double[] values)
Provides a DoubleVector consisting of the given double values.

Parameters:
values - the values to be set as values of theDoubleVector

DoubleVector

public DoubleVector(Double[] values)
Provides a DoubleVector consisting of the given double values.

Parameters:
values - the values to be set as values of theDoubleVector

DoubleVector

public DoubleVector(Matrix columnMatrix)
Expects a matrix of one column.

Parameters:
columnMatrix - a matrix of one column
Method Detail

newInstance

public DoubleVector newInstance(double[] values)
Description copied from class: RealVector
Returns a new RealVector of N for the given values.

Specified by:
newInstance in class RealVector<DoubleVector,Double>
Parameters:
values - the values of the featureVector
Returns:
a new DoubleVector with the specified values
See Also:
RealVector.newInstance(double[])

randomInstance

public DoubleVector randomInstance(Random random)
Returns a new DoubleVector with values between 0 and 1.

Parameters:
random - a Random instance
Returns:
a FeatureVector of T with random values
See Also:
FeatureVector.randomInstance(Random)

randomInstance

public DoubleVector randomInstance(Double min,
                                   Double max,
                                   Random random)
Description copied from interface: FeatureVector
Returns a FeatureVector of T with random values between min and max.

Parameters:
min - minimum of random value
max - maximu of random value
random - a random instance
Returns:
a FeatureVector of T with random values between min and max
See Also:
FeatureVector.randomInstance(Number, Number, java.util.Random)

getDimensionality

public int getDimensionality()
Description copied from interface: FeatureVector
The dimensionality of the vector space whereof this FeatureVector is an element.

Returns:
the number of dimensions of this FeatureVector
See Also:
FeatureVector.getDimensionality()

getValue

public Double getValue(int dimension)
Description copied from interface: FeatureVector
Returns the value in the specified dimension.

Parameters:
dimension - the desired dimension, where 1 ≤ dimension ≤ this.getDimensionality()
Returns:
the value in the specified dimension
See Also:
FeatureVector.getValue(int)

getColumnVector

public Vector getColumnVector()
Description copied from interface: FeatureVector
Returns a Vector representing in one column and getDimensionality() rows the values of this FeatureVector.

Returns:
a Matrix representing in one column and getDimensionality() rows the values of this FeatureVector
See Also:
FeatureVector.getColumnVector()

getRowVector

public Matrix getRowVector()
Description copied from interface: FeatureVector
Returns a Matrix representing in one row and getDimensionality() columns the values of this FeatureVector.

Returns:
a Matrix representing in one row and getDimensionality() columns the values of this FeatureVector
See Also:
FeatureVector.getRowVector()

plus

public DoubleVector plus(DoubleVector fv)
Description copied from interface: FeatureVector
Returns a new FeatureVector that is the sum of this FeatureVector and the given FeatureVector.

Parameters:
fv - a FeatureVector to be added to this Featurevector
Returns:
a new FeatureVector that is the sum of this FeatureVector and the given FeatureVector
See Also:
FeatureVector.plus(de.lmu.ifi.dbs.elki.data.FeatureVector)

nullVector

public DoubleVector nullVector()
Description copied from interface: FeatureVector
Provides a null vector of the same Feature Vector Space as this FeatureVector (that is, of the same dimensionality).

Returns:
a null vector of the same Feature Vector Space as this FeatureVector (that is, of the same dimensionality)
See Also:
FeatureVector.nullVector()

negativeVector

public DoubleVector negativeVector()
Description copied from interface: FeatureVector
Returns the additive inverse to this FeatureVector.

Returns:
the additive inverse to this FeatureVector
See Also:
FeatureVector.negativeVector()

multiplicate

public DoubleVector multiplicate(double k)
Description copied from interface: FeatureVector
Returns a new FeatureVector that is the result of a scalar multiplication with the given scalar.

Parameters:
k - a scalar to multiply this FeatureVector with
Returns:
a new FeatureVector that is the result of a scalar multiplication with the given scalar
See Also:
FeatureVector.multiplicate(double)

toString

public String toString()
Description copied from interface: FeatureVector
Returns a String representation of the FeatureVector as a line that is suitable to be printed in a sequential file.

Specified by:
toString in interface FeatureVector<DoubleVector,Double>
Overrides:
toString in class Object
Returns:
a String representation of the FeatureVector
See Also:
FeatureVector.toString()

Release 0.1 (2008-07-10_1838)