如何计算三维矩阵的平均值,类似于在matlab中使用 mean(array,3),其中'array'是3-D ie。沿第三维的3-D阵列的平均值。一个java等价的
答案 0 :(得分:0)
对于第三维中的每个元素,您将获得一个2D矩阵。例如,
int my3darray[][][] = new int[10][20][30];
new2darray = my3darray[i];
对于该2D矩阵,您可以计算平均值。例如,
2D阵列的大小可以按如下方式计算:
array.length * array[0].length;
然后或多或少这就是你需要的:
int rows = 2; // you get the size from array.length
int cols = 3; // you get the size from array[0].length
int i, j;
for (i=0;i<rows;i++); {
for (i=0;j<cols;j++); {
sum += res[i][j];
}
}
System.out.println(sum/(rows*cols))
如果您使用Apache Common Math,则有getMean
和mean
功能,您可以像这样使用它:
// assume values is a double[] array
double mean = StatUtils.mean(values);