用另一个减去NX1矩阵的一个元素

时间:2012-10-01 17:20:34

标签: arrays matlab subtraction

我有以下nX1矩阵,这里n非常大,我想执行以下操作 - (第二项)减去(第一项),即(2.25555-1.45656),(4.74096-2.25555),( 440.0000-4.74096)等等......剩余的' n'行数

  

1.45656
  2.25555
  4.74096
  440.00000
  0.02000
  550.7
  0.268

我已完成以下操作,但它只提供一个值

[n,m]=size(a)
for i=1,n
    delta_g12(i)=(g_12(i+1)-g_12(i));
end

1 个答案:

答案 0 :(得分:5)

最简单,类似Matlab的方法是使用名为diff的内置函数:

 delta_g12 = diff(g_12);

但你的方式也是可能的。你的代码几乎是正确的,错误在第一行:

  for i=1,n

解释程序忽略,n,就像你写的那样:

  for i=1

相反,您应该使用冒号运算符:

[n,m]=size(a)
for i=1:n
    delta_g12(i)=(g_12(i+1)-g_12(i));
end