Subtraction of elements in successive rows

4 Ansichten (letzte 30 Tage)
Shreya George
Shreya George am 1 Feb. 2021
Kommentiert: Shreya George am 2 Feb. 2021
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]

Akzeptierte Antwort

William
William am 1 Feb. 2021
The easy way to do this is
A = diff(a);
  2 Kommentare
Stephen23
Stephen23 am 1 Feb. 2021
Even better, specify the dimension:
b = diff(a,1,1)
ans = 2×2
1 2 1 2
Shreya George
Shreya George am 2 Feb. 2021
Thanks

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Encryption / Cryptography finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by