我是matlab的新手,我想问一些问题.matlab中是否有任何函数允许我制作矩阵的均值矩阵?
为了给你一些图片,例如我有这样的矩阵:
A = [ 1 2
3 4 ]
B = [ 3 2
1 2 ]
Run Code Online (Sandbox Code Playgroud)
然后我想要的平均矩阵我之前的意思是这样的
Mean = [ 2 2
2 3 ]
Run Code Online (Sandbox Code Playgroud)
有人有建议吗?
另外一个选项:
mean([A(:) B(:)]')
ans =
2 2 2 3
Run Code Online (Sandbox Code Playgroud)
这将从两个矩阵中生成一个向量并返回一个你想要的平均值的向量,然后你可以将它重新整形为2x2,使用reshape,
reshape(mean([A(:) B(:)]'),size(A))
ans =
2 2
2 3
Run Code Online (Sandbox Code Playgroud)
编辑: Eitan建议以下单线解决方案更有效:
mean(cat(ndims(A) + 1, A, B), ndims(A) + 1)
Run Code Online (Sandbox Code Playgroud)