Example #1
0
 public void testSum() {
   DenseMatrix A = new DenseMatrix(new double[][] {{1, 9}, {7, 3}});
   assertTrue(new DenseMatrix(new double[][] {{8, 12}}).equals(A.sumOverRows()));
   assertTrue(new DenseMatrix(new double[][] {{10}, {10}}).equals(A.sumOverCols()));
   SparseMatrixLil B = A.toSparseLil();
   assertTrue(new DenseMatrix(new double[][] {{8, 12}}).toSparseLil().equals(B.sumOverRows()));
   assertTrue(new DenseMatrix(new double[][] {{10}, {10}}).toSparseLil().equals(B.sumOverCols()));
   assertTrue(B.sumOverRows().equals(A.sumOverRows()));
   assertTrue(B.sumOverCols().equals(A.sumOverCols()));
   assertEquals(B.sum().sum().s(), A.sum().sum().s());
   SparseMatrixLil C = spzeros(4, 5);
   C.append(1, 2, 5);
   C.append(3, 1, 3);
   C.append(3, 2, 7);
   C.append(1, 4, 11);
   System.out.println(C.sumOverRows());
   assertTrue(new DenseMatrix(new double[][] {{0, 3, 12, 0, 11}}).equals(C.sumOverRows()));
   System.out.println(C.sumOverCols());
   assertTrue(new DenseMatrix(new double[][] {{0}, {16}, {0}, {10}}).equals(C.sumOverCols()));
   assertEquals(26.0, C.sumOverCols().sumOverRows().s());
   assertEquals(26.0, C.sumOverRows().sumOverCols().s());
 }
Example #2
0
 public static final DenseMatrix varOverCols(DenseMatrix mat) {
   return mat.pow(2).sumOverCols().sub(mat.sumOverCols().pow(2).div(mat.cols)).div(mat.cols - 1);
 }
Example #3
0
 public static final DenseMatrix meanOverCols(DenseMatrix mat) {
   return mat.sumOverCols().div(mat.cols);
 }