org.apache.commons.math3.linear.BlockRealMatrix Java Examples
The following examples show how to use
org.apache.commons.math3.linear.BlockRealMatrix.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: Covariance.java From astor with GNU General Public License v2.0 | 6 votes |
/** * Compute a covariance matrix from a matrix whose columns represent * covariates. * @param matrix input matrix (must have at least one column and two rows) * @param biasCorrected determines whether or not covariance estimates are bias-corrected * @return covariance matrix * @throws MathIllegalArgumentException if the matrix does not contain sufficient data */ protected RealMatrix computeCovarianceMatrix(RealMatrix matrix, boolean biasCorrected) throws MathIllegalArgumentException { int dimension = matrix.getColumnDimension(); Variance variance = new Variance(biasCorrected); RealMatrix outMatrix = new BlockRealMatrix(dimension, dimension); for (int i = 0; i < dimension; i++) { for (int j = 0; j < i; j++) { double cov = covariance(matrix.getColumn(i), matrix.getColumn(j), biasCorrected); outMatrix.setEntry(i, j, cov); outMatrix.setEntry(j, i, cov); } outMatrix.setEntry(i, i, variance.evaluate(matrix.getColumn(i))); } return outMatrix; }
Example #2
Source File: PearsonsCorrelation.java From astor with GNU General Public License v2.0 | 6 votes |
/** * Derives a correlation matrix from a covariance matrix. * * <p>Uses the formula <br/> * <code>r(X,Y) = cov(X,Y)/s(X)s(Y)</code> where * <code>r(·,·)</code> is the correlation coefficient and * <code>s(·)</code> means standard deviation.</p> * * @param covarianceMatrix the covariance matrix * @return correlation matrix */ public RealMatrix covarianceToCorrelation(RealMatrix covarianceMatrix) { int nVars = covarianceMatrix.getColumnDimension(); RealMatrix outMatrix = new BlockRealMatrix(nVars, nVars); for (int i = 0; i < nVars; i++) { double sigma = FastMath.sqrt(covarianceMatrix.getEntry(i, i)); outMatrix.setEntry(i, i, 1d); for (int j = 0; j < i; j++) { double entry = covarianceMatrix.getEntry(i, j) / (sigma * FastMath.sqrt(covarianceMatrix.getEntry(j, j))); outMatrix.setEntry(i, j, entry); outMatrix.setEntry(j, i, entry); } } return outMatrix; }
Example #3
Source File: MixtureTest.java From macrobase with Apache License 2.0 | 6 votes |
@Test public void nonZeroScoreTest() { List<MultivariateDistribution> listDist = new ArrayList<>(3); double[] weights = {2. / 7, 3. / 7, 2. / 7}; double[][] distData = { {1.5, 2}, {0.5, 0.4, 0.4, 0.5}, {2000}, {2, 0}, {0.3, 0, 0, 0.6}, {3000}, {4.5, 1}, {0.9, 0.2, 0.2, 0.3}, {2000}}; for (int i = 0; i < distData.length; i += 3) { RealVector mean = new ArrayRealVector(distData[i + 0]); double[][] covArray = new double[2][2]; covArray[0] = Arrays.copyOfRange(distData[i + 1], 0, 2); covArray[1] = Arrays.copyOfRange(distData[i + 1], 2, 4); RealMatrix cov = new BlockRealMatrix(covArray); listDist.add(new MultivariateNormal(mean, cov)); } Mixture mixture = new Mixture(listDist, weights); assertEquals(0.155359, mixture.density(new ArrayRealVector(distData[0])), 1e-6); assertEquals(0.162771, mixture.density(new ArrayRealVector(distData[3])), 1e-6); assertEquals(0.094819, mixture.density(new ArrayRealVector(distData[6])), 1e-6); }
Example #4
Source File: MatrixUtils.java From incubator-hivemall with Apache License 2.0 | 6 votes |
@Nonnull public static RealMatrix combinedMatrices(@Nonnull final RealMatrix[][] grid, final int dimensions) { Preconditions.checkArgument(grid.length >= 1, "The number of rows must be greater than 1"); Preconditions.checkArgument(grid[0].length >= 1, "The number of cols must be greater than 1"); Preconditions.checkArgument(dimensions > 0, "Dimension should be more than 0: ", dimensions); final int rows = grid.length; final int cols = grid[0].length; final RealMatrix combined = new BlockRealMatrix(rows * dimensions, cols * dimensions); for (int row = 0; row < grid.length; row++) { for (int col = 0; col < grid[row].length; col++) { combined.setSubMatrix(grid[row][col].getData(), row * dimensions, col * dimensions); } } return combined; }
Example #5
Source File: LibCommonsMath.java From systemds with Apache License 2.0 | 6 votes |
/** * Function to solve a given system of equations. * * @param in1 matrix object 1 * @param in2 matrix object 2 * @return matrix block */ private static MatrixBlock computeSolve(MatrixBlock in1, MatrixBlock in2) { //convert to commons math BlockRealMatrix instead of Array2DRowRealMatrix //to avoid unnecessary conversion as QR internally creates a BlockRealMatrix BlockRealMatrix matrixInput = DataConverter.convertToBlockRealMatrix(in1); BlockRealMatrix vectorInput = DataConverter.convertToBlockRealMatrix(in2); /*LUDecompositionImpl ludecompose = new LUDecompositionImpl(matrixInput); DecompositionSolver lusolver = ludecompose.getSolver(); RealMatrix solutionMatrix = lusolver.solve(vectorInput);*/ // Setup a solver based on QR Decomposition QRDecomposition qrdecompose = new QRDecomposition(matrixInput); DecompositionSolver solver = qrdecompose.getSolver(); // Invoke solve RealMatrix solutionMatrix = solver.solve(vectorInput); return DataConverter.convertToMatrixBlock(solutionMatrix); }
Example #6
Source File: CheckUtil.java From nd4j with Apache License 2.0 | 6 votes |
public static RealMatrix convertToApacheMatrix(INDArray matrix) { if (matrix.rank() != 2) throw new IllegalArgumentException("Input rank is not 2 (not matrix)"); long[] shape = matrix.shape(); if (matrix.columns() > Integer.MAX_VALUE || matrix.rows() > Integer.MAX_VALUE) throw new ND4JArraySizeException(); BlockRealMatrix out = new BlockRealMatrix((int) shape[0], (int) shape[1]); for (int i = 0; i < shape[0]; i++) { for (int j = 0; j < shape[1]; j++) { double value = matrix.getDouble(i, j); out.setEntry(i, j, value); } } return out; }
Example #7
Source File: LibCommonsMath.java From systemds with Apache License 2.0 | 6 votes |
/** * Function to solve a given system of equations. * * @param in1 matrix object 1 * @param in2 matrix object 2 * @return matrix block */ private static MatrixBlock computeSolve(MatrixBlock in1, MatrixBlock in2) { //convert to commons math BlockRealMatrix instead of Array2DRowRealMatrix //to avoid unnecessary conversion as QR internally creates a BlockRealMatrix BlockRealMatrix matrixInput = DataConverter.convertToBlockRealMatrix(in1); BlockRealMatrix vectorInput = DataConverter.convertToBlockRealMatrix(in2); /*LUDecompositionImpl ludecompose = new LUDecompositionImpl(matrixInput); DecompositionSolver lusolver = ludecompose.getSolver(); RealMatrix solutionMatrix = lusolver.solve(vectorInput);*/ // Setup a solver based on QR Decomposition QRDecomposition qrdecompose = new QRDecomposition(matrixInput); DecompositionSolver solver = qrdecompose.getSolver(); // Invoke solve RealMatrix solutionMatrix = solver.solve(vectorInput); return DataConverter.convertToMatrixBlock(solutionMatrix); }
Example #8
Source File: PearsonsCorrelation.java From astor with GNU General Public License v2.0 | 6 votes |
/** * Derives a correlation matrix from a covariance matrix. * * <p>Uses the formula <br/> * <code>r(X,Y) = cov(X,Y)/s(X)s(Y)</code> where * <code>r(·,·)</code> is the correlation coefficient and * <code>s(·)</code> means standard deviation.</p> * * @param covarianceMatrix the covariance matrix * @return correlation matrix */ public RealMatrix covarianceToCorrelation(RealMatrix covarianceMatrix) { int nVars = covarianceMatrix.getColumnDimension(); RealMatrix outMatrix = new BlockRealMatrix(nVars, nVars); for (int i = 0; i < nVars; i++) { double sigma = FastMath.sqrt(covarianceMatrix.getEntry(i, i)); outMatrix.setEntry(i, i, 1d); for (int j = 0; j < i; j++) { double entry = covarianceMatrix.getEntry(i, j) / (sigma * FastMath.sqrt(covarianceMatrix.getEntry(j, j))); outMatrix.setEntry(i, j, entry); outMatrix.setEntry(j, i, entry); } } return outMatrix; }
Example #9
Source File: KendallsCorrelationTest.java From astor with GNU General Public License v2.0 | 6 votes |
@Test public void testBlockMatrix() { final double[][] input = new double[][] { new double[] {2.0, 1.0, 2.0}, new double[] {1.0, 2.0, 1.0}, new double[] {0.0, 0.0, 0.0} }; final double[][] expected = new double[][] { new double[] {1.0, 1.0 / 3.0, 1.0}, new double[] {1.0 / 3.0, 1.0, 1.0 / 3.0}, new double[] {1.0, 1.0 / 3.0, 1.0}}; Assert.assertEquals( correlation.computeCorrelationMatrix(new BlockRealMatrix(input)), new BlockRealMatrix(expected)); }
Example #10
Source File: PearsonsCorrelation.java From astor with GNU General Public License v2.0 | 6 votes |
/** * Derives a correlation matrix from a covariance matrix. * * <p>Uses the formula <br/> * <code>r(X,Y) = cov(X,Y)/s(X)s(Y)</code> where * <code>r(·,·)</code> is the correlation coefficient and * <code>s(·)</code> means standard deviation.</p> * * @param covarianceMatrix the covariance matrix * @return correlation matrix */ public RealMatrix covarianceToCorrelation(RealMatrix covarianceMatrix) { int nVars = covarianceMatrix.getColumnDimension(); RealMatrix outMatrix = new BlockRealMatrix(nVars, nVars); for (int i = 0; i < nVars; i++) { double sigma = FastMath.sqrt(covarianceMatrix.getEntry(i, i)); outMatrix.setEntry(i, i, 1d); for (int j = 0; j < i; j++) { double entry = covarianceMatrix.getEntry(i, j) / (sigma * FastMath.sqrt(covarianceMatrix.getEntry(j, j))); outMatrix.setEntry(i, j, entry); outMatrix.setEntry(j, i, entry); } } return outMatrix; }
Example #11
Source File: KendallsCorrelationTest.java From astor with GNU General Public License v2.0 | 6 votes |
@Test public void testBlockMatrix() { final double[][] input = new double[][] { new double[] {2.0, 1.0, 2.0}, new double[] {1.0, 2.0, 1.0}, new double[] {0.0, 0.0, 0.0} }; final double[][] expected = new double[][] { new double[] {1.0, 1.0 / 3.0, 1.0}, new double[] {1.0 / 3.0, 1.0, 1.0 / 3.0}, new double[] {1.0, 1.0 / 3.0, 1.0}}; Assert.assertEquals( correlation.computeCorrelationMatrix(new BlockRealMatrix(input)), new BlockRealMatrix(expected)); }
Example #12
Source File: PearsonsCorrelation.java From astor with GNU General Public License v2.0 | 6 votes |
/** * Returns a matrix of p-values associated with the (two-sided) null * hypothesis that the corresponding correlation coefficient is zero. * <p><code>getCorrelationPValues().getEntry(i,j)</code> is the probability * that a random variable distributed as <code>t<sub>n-2</sub></code> takes * a value with absolute value greater than or equal to <br> * <code>|r|((n - 2) / (1 - r<sup>2</sup>))<sup>1/2</sup></code></p> * <p>The values in the matrix are sometimes referred to as the * <i>significance</i> of the corresponding correlation coefficients.</p> * * @return matrix of p-values * @throws org.apache.commons.math3.exception.MaxCountExceededException * if an error occurs estimating probabilities */ public RealMatrix getCorrelationPValues() { TDistribution tDistribution = new TDistribution(nObs - 2); int nVars = correlationMatrix.getColumnDimension(); double[][] out = new double[nVars][nVars]; for (int i = 0; i < nVars; i++) { for (int j = 0; j < nVars; j++) { if (i == j) { out[i][j] = 0d; } else { double r = correlationMatrix.getEntry(i, j); double t = FastMath.abs(r * FastMath.sqrt((nObs - 2)/(1 - r * r))); out[i][j] = 2 * tDistribution.cumulativeProbability(-t); } } } return new BlockRealMatrix(out); }
Example #13
Source File: PearsonsCorrelation.java From astor with GNU General Public License v2.0 | 6 votes |
/** * Derives a correlation matrix from a covariance matrix. * * <p>Uses the formula <br/> * <code>r(X,Y) = cov(X,Y)/s(X)s(Y)</code> where * <code>r(·,·)</code> is the correlation coefficient and * <code>s(·)</code> means standard deviation.</p> * * @param covarianceMatrix the covariance matrix * @return correlation matrix */ public RealMatrix covarianceToCorrelation(RealMatrix covarianceMatrix) { int nVars = covarianceMatrix.getColumnDimension(); RealMatrix outMatrix = new BlockRealMatrix(nVars, nVars); for (int i = 0; i < nVars; i++) { double sigma = FastMath.sqrt(covarianceMatrix.getEntry(i, i)); outMatrix.setEntry(i, i, 1d); for (int j = 0; j < i; j++) { double entry = covarianceMatrix.getEntry(i, j) / (sigma * FastMath.sqrt(covarianceMatrix.getEntry(j, j))); outMatrix.setEntry(i, j, entry); outMatrix.setEntry(j, i, entry); } } return outMatrix; }
Example #14
Source File: PearsonsCorrelation.java From astor with GNU General Public License v2.0 | 6 votes |
/** * Returns a matrix of p-values associated with the (two-sided) null * hypothesis that the corresponding correlation coefficient is zero. * <p><code>getCorrelationPValues().getEntry(i,j)</code> is the probability * that a random variable distributed as <code>t<sub>n-2</sub></code> takes * a value with absolute value greater than or equal to <br> * <code>|r|((n - 2) / (1 - r<sup>2</sup>))<sup>1/2</sup></code></p> * <p>The values in the matrix are sometimes referred to as the * <i>significance</i> of the corresponding correlation coefficients.</p> * * @return matrix of p-values * @throws org.apache.commons.math3.exception.MaxCountExceededException * if an error occurs estimating probabilities */ public RealMatrix getCorrelationPValues() { TDistribution tDistribution = new TDistribution(nObs - 2); int nVars = correlationMatrix.getColumnDimension(); double[][] out = new double[nVars][nVars]; for (int i = 0; i < nVars; i++) { for (int j = 0; j < nVars; j++) { if (i == j) { out[i][j] = 0d; } else { double r = correlationMatrix.getEntry(i, j); double t = FastMath.abs(r * FastMath.sqrt((nObs - 2)/(1 - r * r))); out[i][j] = 2 * tDistribution.cumulativeProbability(-t); } } } return new BlockRealMatrix(out); }
Example #15
Source File: PearsonsCorrelation.java From astor with GNU General Public License v2.0 | 6 votes |
/** * Derives a correlation matrix from a covariance matrix. * * <p>Uses the formula <br/> * <code>r(X,Y) = cov(X,Y)/s(X)s(Y)</code> where * <code>r(·,·)</code> is the correlation coefficient and * <code>s(·)</code> means standard deviation.</p> * * @param covarianceMatrix the covariance matrix * @return correlation matrix */ public RealMatrix covarianceToCorrelation(RealMatrix covarianceMatrix) { int nVars = covarianceMatrix.getColumnDimension(); RealMatrix outMatrix = new BlockRealMatrix(nVars, nVars); for (int i = 0; i < nVars; i++) { double sigma = FastMath.sqrt(covarianceMatrix.getEntry(i, i)); outMatrix.setEntry(i, i, 1d); for (int j = 0; j < i; j++) { double entry = covarianceMatrix.getEntry(i, j) / (sigma * FastMath.sqrt(covarianceMatrix.getEntry(j, j))); outMatrix.setEntry(i, j, entry); outMatrix.setEntry(j, i, entry); } } return outMatrix; }
Example #16
Source File: PearsonsCorrelation.java From astor with GNU General Public License v2.0 | 6 votes |
/** * Returns a matrix of p-values associated with the (two-sided) null * hypothesis that the corresponding correlation coefficient is zero. * <p><code>getCorrelationPValues().getEntry(i,j)</code> is the probability * that a random variable distributed as <code>t<sub>n-2</sub></code> takes * a value with absolute value greater than or equal to <br> * <code>|r|((n - 2) / (1 - r<sup>2</sup>))<sup>1/2</sup></code></p> * <p>The values in the matrix are sometimes referred to as the * <i>significance</i> of the corresponding correlation coefficients.</p> * * @return matrix of p-values * @throws org.apache.commons.math3.exception.MaxCountExceededException * if an error occurs estimating probabilities */ public RealMatrix getCorrelationPValues() { TDistribution tDistribution = new TDistribution(nObs - 2); int nVars = correlationMatrix.getColumnDimension(); double[][] out = new double[nVars][nVars]; for (int i = 0; i < nVars; i++) { for (int j = 0; j < nVars; j++) { if (i == j) { out[i][j] = 0d; } else { double r = correlationMatrix.getEntry(i, j); double t = FastMath.abs(r * FastMath.sqrt((nObs - 2)/(1 - r * r))); out[i][j] = 2 * tDistribution.cumulativeProbability(-t); } } } return new BlockRealMatrix(out); }
Example #17
Source File: Covariance.java From astor with GNU General Public License v2.0 | 6 votes |
/** * Compute a covariance matrix from a matrix whose columns represent * covariates. * @param matrix input matrix (must have at least one column and two rows) * @param biasCorrected determines whether or not covariance estimates are bias-corrected * @return covariance matrix * @throws MathIllegalArgumentException if the matrix does not contain sufficient data */ protected RealMatrix computeCovarianceMatrix(RealMatrix matrix, boolean biasCorrected) throws MathIllegalArgumentException { int dimension = matrix.getColumnDimension(); Variance variance = new Variance(biasCorrected); RealMatrix outMatrix = new BlockRealMatrix(dimension, dimension); for (int i = 0; i < dimension; i++) { for (int j = 0; j < i; j++) { double cov = covariance(matrix.getColumn(i), matrix.getColumn(j), biasCorrected); outMatrix.setEntry(i, j, cov); outMatrix.setEntry(j, i, cov); } outMatrix.setEntry(i, i, variance.evaluate(matrix.getColumn(i))); } return outMatrix; }
Example #18
Source File: PearsonsCorrelation.java From astor with GNU General Public License v2.0 | 5 votes |
/** * Computes the correlation matrix for the columns of the * input matrix. * * @param matrix matrix with columns representing variables to correlate * @return correlation matrix */ public RealMatrix computeCorrelationMatrix(RealMatrix matrix) { int nVars = matrix.getColumnDimension(); RealMatrix outMatrix = new BlockRealMatrix(nVars, nVars); for (int i = 0; i < nVars; i++) { for (int j = 0; j < i; j++) { double corr = correlation(matrix.getColumn(i), matrix.getColumn(j)); outMatrix.setEntry(i, j, corr); outMatrix.setEntry(j, i, corr); } outMatrix.setEntry(i, i, 1d); } return outMatrix; }
Example #19
Source File: PearsonsCorrelationTest.java From astor with GNU General Public License v2.0 | 5 votes |
protected RealMatrix createRealMatrix(double[] data, int nRows, int nCols) { double[][] matrixData = new double[nRows][nCols]; int ptr = 0; for (int i = 0; i < nRows; i++) { System.arraycopy(data, ptr, matrixData[i], 0, nCols); ptr += nCols; } return new BlockRealMatrix(matrixData); }
Example #20
Source File: Covariance.java From astor with GNU General Public License v2.0 | 5 votes |
/** * Compute a covariance matrix from a matrix whose columns represent * covariates. * @param matrix input matrix (must have at least two columns and two rows) * @param biasCorrected determines whether or not covariance estimates are bias-corrected * @return covariance matrix */ protected RealMatrix computeCovarianceMatrix(RealMatrix matrix, boolean biasCorrected) { int dimension = matrix.getColumnDimension(); Variance variance = new Variance(biasCorrected); RealMatrix outMatrix = new BlockRealMatrix(dimension, dimension); for (int i = 0; i < dimension; i++) { for (int j = 0; j < i; j++) { double cov = covariance(matrix.getColumn(i), matrix.getColumn(j), biasCorrected); outMatrix.setEntry(i, j, cov); outMatrix.setEntry(j, i, cov); } outMatrix.setEntry(i, i, variance.evaluate(matrix.getColumn(i))); } return outMatrix; }
Example #21
Source File: PearsonsCorrelation.java From astor with GNU General Public License v2.0 | 5 votes |
/** * Computes the correlation matrix for the columns of the * input matrix. * * @param matrix matrix with columns representing variables to correlate * @return correlation matrix */ public RealMatrix computeCorrelationMatrix(RealMatrix matrix) { int nVars = matrix.getColumnDimension(); RealMatrix outMatrix = new BlockRealMatrix(nVars, nVars); for (int i = 0; i < nVars; i++) { for (int j = 0; j < i; j++) { double corr = correlation(matrix.getColumn(i), matrix.getColumn(j)); outMatrix.setEntry(i, j, corr); outMatrix.setEntry(j, i, corr); } outMatrix.setEntry(i, i, 1d); } return outMatrix; }
Example #22
Source File: CorrelationAnalysisEngine.java From TomboloDigitalConnector with MIT License | 5 votes |
private static RealMatrix valueMatrixToRealMatrix(List<List<Double>> valueMatrix, List<FieldRecipe> fields){ RealMatrix matrix = new BlockRealMatrix(valueMatrix.size(), fields.size()); for(int i=0; i<valueMatrix.size(); i++){ // The i-th subject with non NaN values for all fields for (int j=0; j<fields.size(); j++){ // j-th field matrix.setEntry(i,j,valueMatrix.get(i).get(j)); } } return matrix; }
Example #23
Source File: Covariance.java From astor with GNU General Public License v2.0 | 5 votes |
/** * Compute a covariance matrix from a matrix whose columns represent * covariates. * @param matrix input matrix (must have at least two columns and two rows) * @param biasCorrected determines whether or not covariance estimates are bias-corrected * @return covariance matrix */ protected RealMatrix computeCovarianceMatrix(RealMatrix matrix, boolean biasCorrected) { int dimension = matrix.getColumnDimension(); Variance variance = new Variance(biasCorrected); RealMatrix outMatrix = new BlockRealMatrix(dimension, dimension); for (int i = 0; i < dimension; i++) { for (int j = 0; j < i; j++) { double cov = covariance(matrix.getColumn(i), matrix.getColumn(j), biasCorrected); outMatrix.setEntry(i, j, cov); outMatrix.setEntry(j, i, cov); } outMatrix.setEntry(i, i, variance.evaluate(matrix.getColumn(i))); } return outMatrix; }
Example #24
Source File: KendallsCorrelation.java From astor with GNU General Public License v2.0 | 5 votes |
/** * Computes the Kendall's Tau rank correlation matrix for the columns of * the input matrix. * * @param matrix matrix with columns representing variables to correlate * @return correlation matrix */ public RealMatrix computeCorrelationMatrix(final RealMatrix matrix) { int nVars = matrix.getColumnDimension(); RealMatrix outMatrix = new BlockRealMatrix(nVars, nVars); for (int i = 0; i < nVars; i++) { for (int j = 0; j < i; j++) { double corr = correlation(matrix.getColumn(i), matrix.getColumn(j)); outMatrix.setEntry(i, j, corr); outMatrix.setEntry(j, i, corr); } outMatrix.setEntry(i, i, 1d); } return outMatrix; }
Example #25
Source File: Nd4jApacheAdapterUtilsUnitTest.java From gatk-protected with BSD 3-Clause "New" or "Revised" License | 5 votes |
@Test public void testApacheMatrixToINDArray() { /* row vector edge case */ assertApacheMatrixToINDArrayCorrectness( new BlockRealMatrix(new double[][] {{1.0, 2.0, 3.0}})); /* column vector edge case */ assertApacheMatrixToINDArrayCorrectness( new BlockRealMatrix(new double[][] {{1.0}, {2.0}, {3.0}})); /* general matrix */ assertApacheMatrixToINDArrayCorrectness( new BlockRealMatrix(new double[][] {{1.0, 2.0, 3.0}, {4.0, 5.0, 6.0}})); }
Example #26
Source File: PearsonsCorrelationTest.java From astor with GNU General Public License v2.0 | 5 votes |
protected RealMatrix createRealMatrix(double[] data, int nRows, int nCols) { double[][] matrixData = new double[nRows][nCols]; int ptr = 0; for (int i = 0; i < nRows; i++) { System.arraycopy(data, ptr, matrixData[i], 0, nCols); ptr += nCols; } return new BlockRealMatrix(matrixData); }
Example #27
Source File: PearsonsCorrelationTest.java From astor with GNU General Public License v2.0 | 5 votes |
protected RealMatrix createLowerTriangularRealMatrix(double[] data, int dimension) { int ptr = 0; RealMatrix result = new BlockRealMatrix(dimension, dimension); for (int i = 1; i < dimension; i++) { for (int j = 0; j < i; j++) { result.setEntry(i, j, data[ptr]); ptr++; } } return result; }
Example #28
Source File: PearsonsCorrelationTest.java From astor with GNU General Public License v2.0 | 5 votes |
protected RealMatrix createRealMatrix(double[] data, int nRows, int nCols) { double[][] matrixData = new double[nRows][nCols]; int ptr = 0; for (int i = 0; i < nRows; i++) { System.arraycopy(data, ptr, matrixData[i], 0, nCols); ptr += nCols; } return new BlockRealMatrix(matrixData); }
Example #29
Source File: Nd4jApacheAdapterUtils.java From gatk-protected with BSD 3-Clause "New" or "Revised" License | 5 votes |
/** * INDArray to Apache * * @param matrix rank-2 INDArray * @return Apache matrix */ public static RealMatrix convertINDArrayToApacheMatrix(@Nonnull final INDArray matrix) { Utils.validateArg(matrix.rank() == 2, "Input rank is not 2 (not matrix)"); final int[] shape = matrix.shape(); final INDArray concreteMatrix = matrix.isView() ? matrix.dup() : matrix; final double[] data = concreteMatrix.data().asDouble(); final char ordering = concreteMatrix.ordering(); if (ordering == 'c') { return new BlockRealMatrix(monoToBiDiArrayRowMajor(data, shape[0], shape[1])); } else { /* ordering == 'f' */ return new BlockRealMatrix(monoToBiDiArrayColumnMajor(data, shape[0], shape[1])); } }
Example #30
Source File: PearsonsCorrelationTest.java From astor with GNU General Public License v2.0 | 5 votes |
protected RealMatrix createRealMatrix(double[] data, int nRows, int nCols) { double[][] matrixData = new double[nRows][nCols]; int ptr = 0; for (int i = 0; i < nRows; i++) { System.arraycopy(data, ptr, matrixData[i], 0, nCols); ptr += nCols; } return new BlockRealMatrix(matrixData); }