java中三维数组沿三维方向的平均值

java中三维数组沿三维方向的平均值,java,matlab,math,matrix,Java,Matlab,Math,Matrix,如何计算三维矩阵的平均值,这类似于在matlab中使用平均值(数组,3),其中“数组”是三维的,即三维数组沿三维的平均值。java等价物对于第三维中的每个元素,您将得到一个2D矩阵。比如说, int my3darray[][][] = new int[10][20][30]; new2darray = my3darray[i]; 对于该2D矩阵,可以计算平均值。比如说, int my3darray[][][] = new int[10][20][30]; new2darray = my3dar

如何计算三维矩阵的平均值,这类似于在matlab中使用平均值(数组,3),其中“数组”是三维的,即三维数组沿三维的平均值。java等价物

对于第三维中的每个元素,您将得到一个2D矩阵。比如说,

int my3darray[][][] = new int[10][20][30];
new2darray = my3darray[i];
对于该2D矩阵,可以计算平均值。比如说,

int my3darray[][][] = new int[10][20][30];
new2darray = my3darray[i];
二维阵列的大小可按如下方式计算:

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))

不,mean(rand(4,5,6,3))只在第三维度上取平均值,因此结果将是一个大小为(4,5)的矩阵,结果的每个元素都是这样的:结果(i,j)=平均值(挤压(原始(i,j,:))是的@这正是我想用java计算的。