如何计算向量中值之间的变化?(Matlab)

如何计算向量中值之间的变化?(Matlab),matlab,vector,Matlab,Vector,我试图用同一个向量中的第四个值减去向量中的第一个值(第四个值减去第八个值,依此类推),但我无法让它工作。我希望它是一个最终有57个值的向量 我试图使用for循环,但它似乎完全错了 任何关于如何解决它的建议一般来说,应该尽可能避免在matlab中使用for循环。在这种情况下,实现您想要做的事情是相当容易的(如果我正确理解了这个问题)。 如果要将每个分量中包含原始向量两个分量之差的向量作为输出,可以这样做: b=a(指数_1)-a(指数_2) 其中a是原始向量,索引_1和索引_2是包含要从a中提取的

我试图用同一个向量中的第四个值减去向量中的第一个值(第四个值减去第八个值,依此类推),但我无法让它工作。我希望它是一个最终有57个值的向量

我试图使用for循环,但它似乎完全错了


任何关于如何解决它的建议一般来说,应该尽可能避免在matlab中使用for循环。在这种情况下,实现您想要做的事情是相当容易的(如果我正确理解了这个问题)。 如果要将每个分量中包含原始向量两个分量之差的向量作为输出,可以这样做:

b=a(指数_1)-a(指数_2)

其中a是原始向量,
索引_1
索引_2
是包含要从a中提取的索引的向量。在你的情况下,我不太明白这些指数可能是什么。也许,您需要执行类似于
索引\u 1=1:3:length(a)
索引\u 2=4:3:length(a)
的操作,但您应该更加精确

作为下一个问题的建议,请提供一些示例代码。这是不言自明的,也证明你至少尝试过解决这个问题。

减去“with”<代码>1
4
8
不是很符合逻辑的序列,是吗?您是否尝试过类似
x(4:3:end)-x(1:3:end-3)