Matlab减去矩阵元素

Matlab减去矩阵元素,matlab,matrix,elements,Matlab,Matrix,Elements,所以我有这个矩阵 资料= 1 3 4 3 5 2 5 我需要通过减去元素得到新数据 像这样 data2-data1 data3-data2 data4-data3 data5-data4 data6-data5 data7-data4 ... datan-data(n-1) 因此,根据这些数据,输出应该是 即时通讯= 我仍在尝试操作此代码,但出现了一个错误 clc data=[1;3;4;3;5;2;5] cnt=size(data,1) for i=1:cnt; i

所以我有这个矩阵

资料=

 1
 3
 4
 3
 5
 2
 5
我需要通过减去元素得到新数据 像这样

data2-data1
data3-data2
data4-data3
data5-data4
data6-data5
data7-data4
...
datan-data(n-1)
因此,根据这些数据,输出应该是 即时通讯=

我仍在尝试操作此代码,但出现了一个错误

clc
data=[1;3;4;3;5;2;5]
cnt=size(data,1)

for i=1:cnt;
    im=(data(i)-(data(i-1)));
end
im

diff
做你想做的事

diff(data)
但是如果你想继续你的方法,我想你得到的错误与
数据(I-1)
有关,当
I=1
时无法定义。您的循环应该是
2:cnt


另一种方法是
data(2:end)-data(1:end-1)

不使用diff可以得到相同的答案吗?只是试着不使用任何函数,但这恰恰回答了我的问题,实际上我编辑了我的答案。虽然我不确定你遇到的错误是什么。哦,改变循环,做与diff相同的事情,非常感谢
diff(data)