All Packages Class Hierarchy This Package Previous Next Index WEKA's home
Class weka.core.Matrix
java.lang.Object
|
+----weka.core.Matrix
- public class Matrix
- extends java.lang.Object
- implements java.lang.Cloneable, java.io.Serializable
Class for performing operations on a matrix of floating-point values.
Some of the code is adapted from Numerical Recipes in C.
- Version:
- $Revision: 1.11.2.1 $
- Author:
- Yong Wang (yongwang@cs.waikato.ac.nz)
- Author:
- Eibe Frank (eibe@cs.waikato.ac.nz)
- Author:
- Len Trigg (eibe@cs.waikato.ac.nz)
Matrix(int, int)
- Constructs a matrix.
Matrix(Reader)
- Reads a matrix from a reader.
add(Matrix)
- Returns the sum of this matrix with another.
addElement(int, int, double)
- Add a value to an element.
clone()
- Creates and returns a clone of this object.
getElement(int, int)
- Returns the value of a cell in the matrix.
lubksb(int[], double[])
- Performs LU backward substitution.
ludcmp()
- Performs LU decomposition.
main(String[])
- Main method for testing this class.
multiply(Matrix)
- Reurns the multiplication of two matrices
numColumns()
- Returns the number of columns in the matrix.
numRows()
- Returns the number of rows in the matrix.
regression(Matrix)
- Performs a (ridged) linear regression.
regression(Matrix, double[])
- Performs a weighted (ridged) linear regression.
setColumn(int, double[])
- Sets a column of the matrix to the given column.
setElement(int, int, double)
- Sets an element of the matrix to the given value.
setRow(int, double[])
- Sets a row of the matrix to the given row.
toString()
- Converts a matrix to a string
transpose()
- Returns the transpose of a matrix.
write(Writer)
- Writes out a matrix
Matrix
public Matrix(int nr,
int nc)
Constructs a matrix.
- Parameters:
nr
- the number of rows
nc
- the number of columns
Matrix
public Matrix(java.io.Reader r) throws java.lang.Exception
Reads a matrix from a reader. The first line in the file should
contain the number of rows and columns. Subsequent lines
contain elements of the matrix.
- Parameters:
r
- the reader containing the matrix
- Throws:
- java.lang.Exception - if an error occurs
clone
public java.lang.Object clone() throws java.lang.CloneNotSupportedException
Creates and returns a clone of this object.
- Returns:
- a clone of this instance.
- Throws:
- java.lang.CloneNotSupportedException - if an error occurs
write
public void write(java.io.Writer w) throws java.lang.Exception
Writes out a matrix
- Parameters:
w
- the output Writer
- Throws:
- java.lang.Exception - if an error occurs
getElement
public final double getElement(int rowIndex,
int columnIndex)
Returns the value of a cell in the matrix.
- Parameters:
rowIndex
- the row's index
columnIndex
- the column's index
- Returns:
- the value
addElement
public final void addElement(int rowIndex,
int columnIndex,
double value)
Add a value to an element.
- Parameters:
rowIndex
- the row's index.
columnIndex
- the column's index.
value
- the value to add.
numRows
public final int numRows()
Returns the number of rows in the matrix.
- Returns:
- the number of rows
numColumns
public final int numColumns()
Returns the number of columns in the matrix.
- Returns:
- the number of columns
setElement
public final void setElement(int rowIndex,
int columnIndex,
double value)
Sets an element of the matrix to the given value.
- Parameters:
rowIndex
- the row's index
columnIndex
- the column's index
value
- the value
setRow
public final void setRow(int index,
double newRow[])
Sets a row of the matrix to the given row. Performs a deep copy.
- Parameters:
index
- the row's index
newRow
- an array of doubles
setColumn
public final void setColumn(int index,
double newColumn[])
Sets a column of the matrix to the given column. Performs a deep copy.
- Parameters:
index
- the column's index
newColumn
- an array of doubles
toString
public java.lang.String toString()
Converts a matrix to a string
- Returns:
- the converted string
- Overrides:
- toString in class java.lang.Object
add
public final Matrix add(Matrix other)
Returns the sum of this matrix with another.
- Returns:
- the sum.
transpose
public final Matrix transpose()
Returns the transpose of a matrix.
- Returns:
- the transposition of this instance).
multiply
public final Matrix multiply(Matrix b)
Reurns the multiplication of two matrices
- Parameters:
b
- the multiplication matrix
- Returns:
- the product matrix
regression
public final double[] regression(Matrix y)
Performs a (ridged) linear regression.
- Parameters:
y
- the dependent variable vector
- Returns:
- the coefficients
- Throws:
- java.lang.IllegalArgumentException - if not successful
regression
public final double[] regression(Matrix y,
double w[])
Performs a weighted (ridged) linear regression.
- Parameters:
y
- the dependent variable vector
w
- the array of data point weights
- Returns:
- the coefficients
- Throws:
- java.lang.IllegalArgumentException - if the wrong number of weights were
provided.
lubksb
public final void lubksb(int indx[],
double b[])
Performs LU backward substitution. Adapted from Numerical Recipes in C.
- Parameters:
indx
- the indices of the permutation
b
- the double vector, storing constant terms in the equation set;
it later stores the computed coefficients' values
ludcmp
public final int[] ludcmp() throws java.lang.Exception
Performs LU decomposition. Adapted from Numerical Recipes in C.
- Returns:
- the indices of the permutation
- Throws:
- java.lang.Exception - if the matrix is singular
main
public static void main(java.lang.String ops[])
Main method for testing this class.
All Packages Class Hierarchy This Package Previous Next Index WEKA's home