Only keep positve values from a matrix and plot the last of those values.

3 visualizaciones (últimos 30 días)
Hello
I have a matrix (1001x50001) and I want to plot the last potive value of each column. The problem is that the last positve value changes position every now and then to the next row.
How do I plot a graph of these value?
I have tried to save all the positve elements from the matrix as a new variable, but I end up with a very long vector.
sPositive = s(s>0)

Respuesta aceptada

Ameer Hamza
Ameer Hamza el 1 de Mayo de 2020
Editada: Ameer Hamza el 1 de Mayo de 2020
try this
s = randn(100, 200); % random vector
[~,r] = max(flipud(s)>0);
r = size(s,1)-r+1;
c = 1:size(s,2);
idx = sub2ind(size(s), r, c);
s_positive = s(idx);
s_positive is the first positive value in each column.
  8 comentarios
Mikkel Christensen
Mikkel Christensen el 1 de Mayo de 2020
That's amazing, that did the trick.
Thank you very much!!!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Descriptive Statistics and Visualization 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