我有三个阵列--经度、纬度、长度相同的高度。高度数组是纬度和经度的函数。结构简单,每个纬度值(例如85.00)都有对应的0-360经度高度值。为了简单起见,下面是原始数据的样子:
longitude latitude height
0.00 -90.00 5
. . .
. . .
360.00 -90.00 7
0.00 -89.00 9
. . .
. . .
360.00 -89.00 14
. . .
\\similar pattern until 90.00..
0.00 90.00 3
. . .
. . .
360.00 90.00 14
我希望我的纬度数组从90.00到-90.00,而不是-90.00到90.00,因此高度数组将被更改。因此,很明显,我必须移动高度数组的部分。我怎样才能做到这一点?只需要数组操作就可以了吗?还是我需要一个循环?
这就是我希望它作为输出的方式。
0.00 90.00 3
. . .
. . .
360.00 90.00 14
. . .
. . .
. . .
0.00 -89.00 9
. . .
. . .
360.00 -89.00 14
0.00 -90.00 5
. . .
. . .
360.00 -90.00 7
注:单个纬度对应的经度为0-360度,有10800 (高度)值.总长度为58320000
我希望我说得够清楚
发布于 2015-06-24 14:08:13
给定列向量A
,将其划分为大小为blkSize
的块,您可以反转块的顺序(保持块内的顺序相同),如下所示:
m = numel(A);
B = reshape(flipud(reshape(flipud(A),blkSize,[])),m,1)
示例:
A = [1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18].';
blkSize = 3;
B.' = 16 17 18 13 14 15 10 11 12 7 8 9 4 5 6 1 2 3
(为了简洁起见,输入和输出转换。)
https://stackoverflow.com/questions/31037401
复制相似问题