怎么用matlab求一个矩阵某些给定位置数值的平均值?

举例来说,某个矩阵A=[1,2,3;4,5,6;7,8,9],另外一个矩阵B代表A矩阵中某个值的位置,例如B=[1,1;2,2;3,3]。即我要求1,5,9三个数的平均值=5.这个命令求平均值的命令应当怎么写?

直接用简单的命令,我想不出来要怎么么写,只能用for循环来替代了

clc;clear;
A = 1:9;
A = reshape(A,3,3)'
B = [ 1 1 ; 2 2 ; 3 3 ];
a = size(B,1);
for i = 1:a
   tmp(i) = A( B(i,1) , B(i,2) ); 
end
mean(tmp)
温馨提示:答案为网友推荐,仅供参考
相似回答