我如何以向量化方式对矩阵中的每个第n个元素求平均?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我如何以向量化方式对矩阵中的每个第n个元素求平均?相关的知识,希望对你有一定的参考价值。

[在Matlab中,我有一个64x64x256x256的矩阵A。我想对最后2个维度的每第4个元素求平均值,以获得64 ^ 4的矩阵。以前,我使用2 for循环完成此操作,但是它非常慢,我想加快速度。

for n2 = 1:pts
    tmp_Matrix(:,:,:,n2) = sum(Matrix_A(:,:,:,(1+numAvg*(n2-1):n2*numAvg)),4)/numAvg;
end
for n1 = 1:pts
    Final_Matrix(:,:,n1,:) = sum(tmp_Matrix(:,:,(1+numAvg*(n1-1):n1*numAvg),:),3)/numAvg;
end

还有其他一些类似的问题,但是它们处理的是二维矩阵,因此无法扩展到更高的维度。任何建议将不胜感激!

答案

您可以使用movmean

movmean

以上是关于我如何以向量化方式对矩阵中的每个第n个元素求平均?的主要内容,如果未能解决你的问题,请参考以下文章

带有滑动窗口元素的矩阵

求平均成绩 题解

SVM - 如何对核化的 gram 矩阵进行矢量化?

matlab中怎么求余数

急求,arcgis中,如何求每个独立的栅格块的平均值,并将平均值赋予到对应的矢量图块上???

Python:计算具有不同长度的列表列表中第 n 个元素的平均值