【发布时间】:2012-06-15 16:57:19
【问题描述】:
我有两个数组。我想根据存储在另一个中的数组位置列表从其中一个复制数据范围。例如,如果第一个数组由 100 行和 2 列组成,我可能想复制第 10-20 行、第 60-70 行和第 75-79 行。如果是这样,那么第二个数组的内容如下:
b =
10 20
60 70
75 79
为了根据第二个数组(我们称之为“a”)选择第一个数组的适当行,我将执行以下操作:
b = [a(1,1):a(1,2) a(2,1):a(2,2) a(3,1):a(3,2)]
这可行,并返回数组“b”,它基本上是提取正确内容的数组“a”。
问题是,数组“b”实际上包含 50 到 60 行(即要包含的范围)。
如何使上述代码更高效,使其适用于 'b' 中的任意数量的行?
【问题讨论】:
-
为了与 MATLAB 术语保持一致,您应该在适当的地方使用
vectors和matrices...