Subtraction of elements in successive rows

2 ビュー (過去 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 ExchangeEncryption / Cryptography についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by