多维矩阵中的逐元素最大值

时间:2015-05-10 04:41:45

标签: matlab matrix

我有一些维度为mxnxt的多维矩阵,其中mxn中的每个元素都是单独的传感器输入,t是时间。我想要做的是仅分析mxnt上每个元素的峰值,因此我最终会得到一个仅包含最大值的mxn的二维矩阵。

我知道有一些方法可以获得单个整体最大值,但是有没有办法将它与bsxfun之类的逐个元素的操作相结合,以便检查t上的每个单独元素}?

我很感激你能给予的任何帮助,因为我现在真的被困住了。提前谢谢!

2 个答案:

答案 0 :(得分:1)

这是你想要的吗?

out = max(A,[],3);        %// checking maximum values in 3rd dimension

示例:

A = randi(50,3,3,3);      %// Random 3x3x3 dim matrix
out = max(A,[],3);

<强>结果:

A(:,:,1) =

35     5     8
38    12    42
23    46    27


A(:,:,2) =

50     6    39
 4    49    41
23     1    44


A(:,:,3) =

 5    41    10
20    22    14
13    46     8

>> out

out =

50    41    39
38    49    42
23    46    44

答案 1 :(得分:1)

您可以使用矩阵调用max()并选择要计算操作的维度(查看documentation),例如

M = max(A,[],3)