Borrar filtros
Borrar filtros

Trying to find the min non-zero value of a [925x902] matrix

5 visualizaciones (últimos 30 días)
I am trying to find the minimum non-zero value of a [925x902] matrix called D1.Z
i have tried:
min(D1.Z(D1.Z > 0));
D1.Z(D1.Z==0) = nan; then min(min(D1.Z));
Error comes up saying the 'index exceeds the number of array elements (1)'
Anyway around these?

Respuesta aceptada

Star Strider
Star Strider el 25 de Abr. de 2022
Perhaps —
D1.Z = rand(925,902) % Create Test Matrix
D1 = struct with fields:
Z: [925×902 double]
D1.Z(randi(numel(D1.Z),1,5)) = 0; % Set Some Elements To Zero
Check = min(D1.Z,[],'all') % Check Matrix To Demonstrate Replacement Effective
Check = 0
MinZ = min(D1.Z(D1.Z~=0),[],'all') % Return Minimum ~= 0
MinZ = 1.2686e-06
.
  6 comentarios
Star Strider
Star Strider el 25 de Abr. de 2022
My pleasure!
If my Answer helped you solve your problem, please Accept it!
.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Logical 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