Borrar filtros
Borrar filtros

How to set all non-finite elements of a matrix to the minimum of the corresponding column?

5 visualizaciones (últimos 30 días)
Hi,
I have a matrix m and want to set all elements that are NaN, Inf or -Inf to the minimum of the corresponding column. For example: If m(r,c) is non-finite, it should be set to the lowest finite value of column c.
How can this be done (preferably without looping)?
Thanks...

Respuesta aceptada

Matt J
Matt J el 28 de Sept. de 2013
Editada: Matt J el 28 de Sept. de 2013
m(~isfinite(m))=nan;
minvals=min(m,[],1);
m=bsxfun(@max,m,minvals);

Más respuestas (0)

Categorías

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

Community Treasure Hunt

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

Start Hunting!

Translated by