说,如果我有一个3D阵列:减去矢量
lat = 45:49;
lon = -116:-110;
b = rand(5,7,12);
其中第一维代表纬度,第二维表示经度和第三行表示数据。我打算使用映射工具箱在地图上绘制这三维数据。但是,在此之前,我想找到“B”的数据之间及以下向量的区别:
vals = [2.3,5,6.8,5.4,3.3,12,1.5,4.6,9.8,82,3.3,1];
具体而言,我在我的映射的数据我owuld想每个空间数据点计算该向量与b中每个点处数据之间的平均绝对误差。如果这些是两个正常的载体,我会用:
mae = mean(abs(bv - vals))
但我不知道如何做到这一点与3D阵列。最终,我的目标是将这个平均绝对误差映射为空间变化。任何人都可以建议如何做到这一点在MATLAB中?
'bsxfun'是实现更有效的方法在Matlab中广播:http://blogs.mathworks.com/loren/2008/08/04/comparing-repmat-and-bsxfun-performance/ – Dan
@丹它绝对是!我只是不习惯,我期待Divakar会回答:P –