Package weka.core
Class AlgVector
java.lang.Object
weka.core.AlgVector
- All Implemented Interfaces:
Serializable,Cloneable,RevisionHandler
Class for performing operations on an algebraic vector
of floating-point values.
- Version:
- $Revision: 8034 $
- Author:
- Gabi Schmidberger (gabi@cs.waikato.ac.nz)
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal AlgVectorReturns the sum of this vector with another.voidchangeLength(double len) Changes the length of a vector.clone()Creates and returns a clone of this object.final doubleReturns the inner (or dot) product of two vectorsgetAsInstance(Instances model, Random random) Gets the elements of the vector as an instance.final doublegetElement(int index) Returns the value of a cell in the matrix.double[]Gets the elements of the vector and returns them as double array.Returns the revision string.static voidMain method for testing this class, can take an ARFF file as first argument.doublenorm()Returns the norm of the vectorfinal voidNorms this vector to length 1.0final intReturns the number of elements in the vector.final voidscalarMultiply(double s) Computes the scalar product of this vector with a scalarfinal voidsetElement(int index, double value) Sets an element of the matrix to the given value.final voidsetElements(double[] elements) Sets the elements of the vector to values of the given array.final AlgVectorReturns the difference of this vector minus another.toString()Converts a vector to a string
-
Constructor Details
-
AlgVector
public AlgVector(int n) Constructs a vector and initializes it with default values.- Parameters:
n- the number of elements
-
AlgVector
public AlgVector(double[] array) Constructs a vector using a given array.- Parameters:
array- the values of the matrix
-
AlgVector
Constructs a vector using a given data format. The vector has an element for each numerical attribute. The other attributes (nominal, string) are ignored. Random is used to initialize the attributes.- Parameters:
format- the data format to userandom- for initializing the attributes- Throws:
Exception- if something goes wrong
-
AlgVector
Constructs a vector using an instance. The vector has an element for each numerical attribute. The other attributes (nominal, string) are ignored.- Parameters:
instance- with numeric attributes, that AlgVector gets build from- Throws:
Exception- if instance doesn't have access to the data format or no numeric attributes in the data
-
-
Method Details
-
clone
Creates and returns a clone of this object.- Returns:
- a clone of this instance.
- Throws:
CloneNotSupportedException- if an error occurs
-
getElement
public final double getElement(int index) Returns the value of a cell in the matrix.- Parameters:
index- the row's index- Returns:
- the value of the cell of the vector
-
numElements
public final int numElements()Returns the number of elements in the vector.- Returns:
- the number of rows
-
setElement
public final void setElement(int index, double value) Sets an element of the matrix to the given value.- Parameters:
index- the elements indexvalue- the new value
-
setElements
public final void setElements(double[] elements) Sets the elements of the vector to values of the given array. Performs a deep copy.- Parameters:
elements- an array of doubles
-
getElements
public double[] getElements()Gets the elements of the vector and returns them as double array.- Returns:
- an array of doubles
-
getAsInstance
Gets the elements of the vector as an instance. !! NON-numeric data is ignored sofar- Parameters:
model- the dataset structure to fit the data torandom- in case of nominal values a random label is taken- Returns:
- an array of doubles
- Throws:
Exception- if length of vector is not number of numerical attributes
-
add
Returns the sum of this vector with another.- Parameters:
other- the vector to add- Returns:
- a vector containing the sum.
-
substract
Returns the difference of this vector minus another.- Parameters:
other- the vector to subtract- Returns:
- a vector containing the difference vector.
-
dotMultiply
Returns the inner (or dot) product of two vectors- Parameters:
b- the multiplication matrix- Returns:
- the double representing the dot product
-
scalarMultiply
public final void scalarMultiply(double s) Computes the scalar product of this vector with a scalar- Parameters:
s- the scalar
-
changeLength
public void changeLength(double len) Changes the length of a vector.- Parameters:
len- the new length of the vector
-
norm
public double norm()Returns the norm of the vector- Returns:
- the norm of the vector
-
normVector
public final void normVector()Norms this vector to length 1.0 -
toString
Converts a vector to a string -
getRevision
Returns the revision string.- Specified by:
getRevisionin interfaceRevisionHandler- Returns:
- the revision
-
main
Main method for testing this class, can take an ARFF file as first argument.- Parameters:
args- commandline options- Throws:
Exception- if something goes wrong in testing
-