How to loop around cumsum ?

Hello,
I have a file 3600x601 and I would like to obtain a file 1x601 where each 601 value in the new file is the cumulative sum of the associated 3600 values.
I have written this:
for i =1:601
Csflux = cumsum(Flux(i,:));
end
where Flux is 3600x601
At the end I have Csflux 1x601 but it's the cumulative sum of each 601, so it's not what I want.
Do you have any ideas?
I am working on a current fluxes in a coral reef :)

1 Commento

James Tursa
James Tursa il 3 Giu 2020
Modificato: James Tursa il 3 Giu 2020
Please show a small example. E.g., show a specific 5x3 input and the desired output.

Accedi per commentare.

Risposte (1)

Image Analyst
Image Analyst il 3 Giu 2020
Did you just want the sum of each column? Like this:
columnSums = sum(Flux, 1);

2 Commenti

Lea Enguehard
Lea Enguehard il 3 Giu 2020
I want the cumulative sum of each 3600 value
Lea, we still don't know what you mean, in spite of James and I asking for more clarification or an example. By the way, is this homework?
Is this what you mean?
% Create small test data set.
Flux = randi(9, 5, 15);
columnSums = sum(Flux, 1);
cSums = zeros(size(Flux)); % Preallocate space.
for column = 1 : size(Flux, 2)
thisCumulativeSum = cumsum(Flux(:, column)) % Let's see it first (optional).
cSums(:, column) = thisCumulativeSum
end
Here each column is the cumulative sum, as you go down the rows, of the original column in Flux.

Accedi per commentare.

Categorie

Scopri di più su Mathematics and Optimization in Centro assistenza e File Exchange

Tag

Richiesto:

il 3 Giu 2020

Commentato:

il 4 Giu 2020

Community Treasure Hunt

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

Start Hunting!

Translated by