我有一个向量,想将其分割成大小为cs
,移位为sh
的重叠子向量。假设输入向量为:
v=[1 2 3 4 5 6 7 8 9 10 11 12 13]; % A=[1:13]
假设有一个chunksize
为4(cs=4
),移位为2(sh=2
),则结果应如下:
[1 2 3 4]
[3 4 5 6]
[5 6 7 8]
[7 8 9 10]
[9 10 11 12]
请注意,输入向量不一定能被 chunksize
整除,因此某些子向量会被丢弃。有没有快速的方法来计算它,而不需要使用例如 for
循环?
在一个相关的帖子中,我找到了如何在考虑非重叠子向量时完成这项工作。
cs = 5; sh = 2;
进行尝试,将会得到三个而不是两个(当 sh=2 时应该是两个)重叠的条目。 - timsh
是描述重叠条目数量的,但现在我看到你们两个都把它当作另一种度量方式。对不起,这是我的错,可能真的漏掉了那个部分。而且我现在才看到描述并不唯一,因为发布的示例是含糊不清的。 - timbsxfun
(几乎)总是值得 +1! - Luis Mendo