Finding the ratio of numbers in an array

5 visualizaciones (últimos 30 días)
Benjamin Cowen
Benjamin Cowen el 4 de Mzo. de 2020
Editada: Rik el 4 de Mzo. de 2020
I access my array as:
data{1, i}(:,2)
So it is in the second column of data{1,i}
I have data in columns 3 and 4 already. I would like to make a column 5. I want column 5 to be the value in column 2 divided by the value in column 2 but 30 cells up. This means the first 30 values cannot be defined since we cannot compare to 30 cells prior. I keep trying this but I either get an array of zeros, or a single value. Can anyone help?
For instance, this does not work:
for j =31:1:1000
rois=data{1, i}(j,2)/data{1, i}(j-30,2)
end
  2 comentarios
Prasobhkumar P. P.
Prasobhkumar P. P. el 4 de Mzo. de 2020
Why step size is 100?shouldnt be 1?
Benjamin Cowen
Benjamin Cowen el 4 de Mzo. de 2020
Editada: Benjamin Cowen el 4 de Mzo. de 2020
Yeah, it should be 1, sorry about that. I tried 1 at first and it got hung, so i assumed i was doing something wrong

Iniciar sesión para comentar.

Respuestas (1)

Rik
Rik el 4 de Mzo. de 2020
Editada: Rik el 4 de Mzo. de 2020
rois=data{1, i}(31:end,2)./data{1, i}(1:(end-30),2);
In your current loop you are overwriting your result every iteration, you should have used indexing instead, skip the loop entirely.

Categorías

Más información sobre Matrix Indexing en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by