How to get original values from cumulative sum values?

42 Ansichten (letzte 30 Tage)
Niraj Bal Tamang
Niraj Bal Tamang am 19 Jun. 2022
Beantwortet: Stephen23 am 19 Jun. 2022
I have a list of cumulative sum values. I want to obtain another list with the values that generated the cumulative sum vaues. Something like a reverse cumulative sum process. I tried (X2-X1) formula for each consecutive value but couldn't get the exact values. Can someone please help me to reverse the cumulative sum values to original values.
Thank you

Akzeptierte Antwort

Stephen23
Stephen23 am 19 Jun. 2022
X = rand(1,9)
X = 1×9
0.8615 0.8710 0.7907 0.5073 0.3673 0.4523 0.4018 0.2258 0.1596
Y = cumsum(X)
Y = 1×9
0.8615 1.7326 2.5233 3.0306 3.3979 3.8502 4.2520 4.4778 4.6374
Z = [Y(1),diff(Y)]
Z = 1×9
0.8615 0.8710 0.7907 0.5073 0.3673 0.4523 0.4018 0.2258 0.1596
max(X-Z) % alomsot zero
ans = 4.4409e-16
Because of the accumulated floating point error getting exactly the same values is not expected.

Weitere Antworten (0)

Kategorien

Mehr zu GPU Computing 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