Going back from cumsum for a matrix
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
valentino dardanoni
il 21 Ott 2022
Commentato: valentino dardanoni
il 21 Ott 2022
Suppose I cumsum a matrix, say A=rand(3,3); B=cumsum(A).
Knowing B, how to I get back to A, in a reasonably efficient way, for a rather large B?
Thanks!
Risposta accettata
David Hill
il 21 Ott 2022
A=round(rand(100,100),4);
B=cumsum(A);
a=round([B(1,:);diff(B)],4);
isequal(A,a)
1 Commento
Walter Roberson
il 21 Ott 2022
Right.
Key points here are the use of diff(), the duplication of the first entry, and the rounding or other way of comparing with tolerance for the cross-check (since you would need to deal with round-off errors.)
Più risposte (0)
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!