本文整理汇总了Java中org.ujmp.core.Matrix.getSize方法的典型用法代码示例。如果您正苦于以下问题:Java Matrix.getSize方法的具体用法?Java Matrix.getSize怎么用?Java Matrix.getSize使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.ujmp.core.Matrix
的用法示例。
在下文中一共展示了Matrix.getSize方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: AbsMax
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
/**
* 用于计算一个矩阵的元素中,绝对值最大的那个值。
*
* @param matrix
* @return
*/
public static double AbsMax(Matrix matrix) {
double maxValue = 0.0;
long[] matrix_size = matrix.getSize();
long m = matrix_size[0];
long n = matrix_size[1];
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
double absValue = matrix.getAsDouble(i, j);
if (absValue < 0.0)
absValue = absValue * (-1);
if (absValue > maxValue)
maxValue = absValue;
}
}
return maxValue;
}
示例2: printMatrix
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
/**
* 用于把矩阵输出到文件中
*
* @param matrix
* @param outputPath
*/
public static void printMatrix(Matrix matrix, String outputPath) {
long[] size = matrix.getSize();
long m = size[0]; long n = size[1];
String cont = "";
DecimalFormat df = new DecimalFormat("#0.000000");
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
cont = cont + df.format(matrix.getAsDouble(i,j)) + " ";
}
cont = cont + "\n";
}
try {
FileUtils.write(new File(outputPath), cont, "utf-8");
} catch (IOException e) {
e.printStackTrace();
}
}
示例3: NormByRow
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
/**
* 用于把矩阵按行归一化
*
* @param oriMatrix
* @return
*/
public static Matrix NormByRow(Matrix oriMatrix) {
long[] size = oriMatrix.getSize();
long m = size[0];
long n = size[1];
Matrix normedMatrix = Matrix.Factory.zeros(m, n);
for (int i = 0; i < m; i++) {
double summary = 0.0;
for (int j = 0; j < n; j++) {
summary = summary + oriMatrix.getAsDouble(i, j);
}
if (summary == 0)
continue;
else {
for (int j = 0; j < n; j++) {
normedMatrix.setAsDouble(oriMatrix.getAsDouble(i, j) / summary, i, j);
}
}
}
return normedMatrix;
}
示例4: DefaultDenseDoubleMatrixMultiD
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
public DefaultDenseDoubleMatrixMultiD(Matrix m) {
super(m.getSize());
this.size = Coordinates.copyOf(m.getSize());
this.length = (int) Coordinates.product(size);
this.values = new double[length];
if (m instanceof DefaultDenseDoubleMatrixMultiD) {
double[] v = ((DefaultDenseDoubleMatrixMultiD) m).values;
System.arraycopy(v, 0, this.values, 0, v.length);
} else {
for (long[] c : m.allCoordinates()) {
setDouble(m.getAsDouble(c), c);
}
}
if (m.getMetaData() != null) {
setMetaData(m.getMetaData().clone());
}
}
示例5: calculateNewSize
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
private static long[] calculateNewSize(Matrix source) {
long[] oldSize = source.getSize();
int n = 0;
for (int d = oldSize.length; --d != -1;) {
if (oldSize[d] > 1) {
n++;
}
}
long[] newSize = new long[n];
for (int d = oldSize.length; --d != -1;) {
if (oldSize[d] > 1) {
n--;
newSize[n] = oldSize[d];
}
}
return newSize;
}
示例6: SumMatrix
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
public static double SumMatrix(Matrix matrix) {
double value = 0.0;
long[] matrix_size = matrix.getSize();
long m = matrix_size[0];
long n = matrix_size[1];
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
value = value + matrix.getAsDouble(i, j);
}
}
return value;
}
示例7: MaxLocation
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
/**
* 用于找到一个行矩阵的最大值出现在的位置。
*
* @param matrix:这需要是一个行矩阵。一行,n列。
* @return
*/
public static long MaxLocation(Matrix matrix) {
long l = 0;
double maxValue = AbsMax(matrix);
long[] matrix_size = matrix.getSize();
long n = matrix_size[1];
for (int i = 0; i < n; i++) {
if (matrix.getAsDouble(0, i) == maxValue) {
l = i;
break;
}
}
return l;
}
示例8: CreateMatrixP2
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
public static Matrix CreateMatrixP2(Matrix p1) {
System.out.println("正在构建矩阵P2...");
long[] p1_size = p1.getSize();
long n = p1_size[0];
Matrix p2 = NormByRow(p1);
// printMatrix(p2, oriPath + "experiment\\p2.txt");
return p2;
}
示例9: getVector
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
/**
* @return
*/
public double[] getVector() {
double[] v = null;
if(matrix instanceof Matrix) {
Matrix m = (Matrix) matrix;
v = new double[(int) m.getSize()[0]];
for(int i=0; i<v.length; i++)
v[i] = m.getAsDouble(i);
}
return v;
}
示例10: MLDenseDoubleMatrix
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
public MLDenseDoubleMatrix(Matrix m) {
super(m.getSize());
if (m.getMetaData() != null) {
setMetaData(m.getMetaData().clone());
this.matrix = new MLDouble(m.getLabel(), MathUtil.toIntArray(m.getSize()));
} else {
this.matrix = new MLDouble("matrix" + System.nanoTime(), MathUtil.toIntArray(m
.getSize()));
}
init();
for (long[] c : m.availableCoordinates()) {
setAsDouble(m.getAsDouble(c), c);
}
}
示例11: DefaultSparseGenericMatrix
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
public DefaultSparseGenericMatrix(Matrix m, int maximumNumberOfEntries) {
super(m.getSize());
this.maximumNumberOfEntries = maximumNumberOfEntries;
for (long[] c : m.availableCoordinates()) {
setObject(m.getAsObject(c), c);
}
if (m.getMetaData() != null) {
setMetaData(m.getMetaData().clone());
}
}
示例12: DenseFileMatrix
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
public DenseFileMatrix(Matrix m) throws IOException {
this(m.getSize());
for (long[] c : m.allCoordinates()) {
setAsDouble(m.getAsDouble(c), c);
}
MapMatrix<String, Object> a = m.getMetaData();
if (a != null) {
setMetaData(a.clone());
}
}
示例13: Reshape
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
public Reshape(Matrix source, long... newSize) {
super(source);
this.newSize = newSize;
this.oldSize = source.getSize();
VerifyUtil.verifyEquals(Coordinates.product(oldSize), Coordinates.product(newSize),
"new matrix must have the same number of cells");
}
示例14: SerializedSparseObjectMatrix
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
public SerializedSparseObjectMatrix(Matrix source) throws IOException {
this(source.getSize());
for (long[] c : source.availableCoordinates()) {
setAsObject(source.getAsObject(c), c);
}
MapMatrix<String, Object> a = source.getMetaData();
if (a != null) {
setMetaData(a.clone());
}
}
示例15: VolatileSparseObjectMatrix
import org.ujmp.core.Matrix; //导入方法依赖的package包/类
public VolatileSparseObjectMatrix(Matrix m) {
super(m.getSize());
this.size = Coordinates.copyOf(m.getSize());
for (long[] c : m.allCoordinates()) {
setAsDouble(m.getAsDouble(c), c);
}
}