How to assign Nans to specific column, not entire row
11 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Tanika Bawa
el 11 de Mzo. de 2022
Comentada: Scott MacKenzie
el 11 de Mzo. de 2022
Hello!
I am trying to assign NaNs to values under 0.95, but only for the rows in column 4, not all of the columns.
Before, I used:
ZB1array = table2array(ZB1);
idx = ZB1array(:,4) < 0.95;
ZB1array(idx,: ) = NaN;
This successfully assigned NaNs, but to the entire row. In order to assign them to rows only in column 4 I tried:
ZB1array(idx, ZB1array(:,4)) = NaN;
But this returns the error 'Index in position 2 is invalid. Array indices must be positive integers or logical values.'
Does anyone know what I should do? Thanks!
0 comentarios
Respuesta aceptada
Scott MacKenzie
el 11 de Mzo. de 2022
Editada: Scott MacKenzie
el 11 de Mzo. de 2022
Your first attempt was almost correct. Here's the fix:
ZB1array = rand(5,5) % test data
idx = ZB1array(:,4) < 0.95;
ZB1array(idx,4) = NaN % must specify column 4
2 comentarios
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!