Subtraction of elements in successive rows

3 ビュー (過去 30 日間)
Shreya George
Shreya George 2021 年 2 月 1 日
コメント済み: Shreya George 2021 年 2 月 2 日
I have a matrix 'a'. I need an output matrix 'A' with each row equal to the difference between successive rows of the parent matrix 'a'. Is there a way to do this? I tried coding it in the following manner but keep getting an error message 'Unable to perform assignment because the left and right sides have a different number of elements.'
a=[1 2;2 4;3 6];
A=zeros(2,2);
for i=1:2
A(i)=(a(i+1,:)-a(i,:));
end
The expected result is A=[1 2; 1 2]

採用された回答

William
William 2021 年 2 月 1 日
The easy way to do this is
A = diff(a);
  2 件のコメント
Stephen23
Stephen23 2021 年 2 月 1 日
Even better, specify the dimension:
b = diff(a,1,1)
ans = 2×2
1 2 1 2
Shreya George
Shreya George 2021 年 2 月 2 日
Thanks

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeOperators and Elementary Operations についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by