arrays - 选定维度上4D阵列的均值

标签 arrays matlab matrix statistics mean

我在4D矩阵上使用MATLAB中的mean函数。

矩阵是一个32x2x20x7数组,我希望找到每个第4维的每一行,所有第3维的列和元素的均值。

因此,基本上是每个b, c的均值(data(b,:,:,c)) [伪代码]。

但是,当我这样做时,它会为每个第3维吐出单独的均值,您是否知道如何得到上述等式的一个均值-,所以它将是( 32x7 =)224均值。

最佳答案

请注意,通过两次调用mean,根据操作顺序,结果中的数值差异会很小。因此,我建议一次调用mean来避免这种情况:

squeeze(mean(reshape(data,size(data,1),[],size(data,4)),2))

或者,如果您不喜欢squeeze(有些人喜欢!):
mean(permute(reshape(data,size(data,1),[],size(data,4)),[1 3 2]),3)

这两个命令都使用reshape组合data的第二维和第三维,以便在新的较大的第二维上对mean的单个调用将执行所有所需的计算。

关于arrays - 选定维度上4D阵列的均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20451864/

相关文章:

javascript - 在 Java 脚本中访问已解析的 JSON 响应中的数组

matlab - Matlab中不同的高斯函数有什么区别?

matlab - Matlab中如何区分操作系统?

javascript - svg 将矩阵符号转换为旋转/平移

r - 无法从数据框中删除空白,因此无法找到均值

c - 如果 a 是数组,函数 (1,a+2) 中的加法是什么意思?

c - sscanf 在未知大小的矩阵上的用法?

matlab - 多轴断裂

android - Android中canvas和matrix是什么关系?

c++ - C++错误:多维数组的初始化程序太多