Subtract elements greater than a threshold?
7 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Eric Beamesderfer
el 23 de En. de 2020
Comentada: Eric Beamesderfer
el 23 de En. de 2020
I have a 2048x10000 double precision dataset. Most values range from 0 to ~5000, but there are scattered values exceeding 1,000,000. After reading the manual for the instrument, I found that for numbers greater than 524287 (2^19 - 1) you're supposed to substract 1048576 (2^20). I had thought to index the data (ind = (test > 524287)) and then subtract the values from those indexed elements but have been unable to make it happen, often receiving the error: "Unable to perform assignment because the left and right sides have a different number of elements."
0 comentarios
Respuesta aceptada
Walter Roberson
el 23 de En. de 2020
mask = YourArray > 2^19 - 1;
YourArray(mask) = YourArray(mask) - 2^20;
Más respuestas (0)
Ver también
Categorías
Más información sobre Matrix Indexing 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!