I have a vector where the end is padded with NaN. How to index where real numbers end and where NaNs begin
4 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Joanne Hall
el 2 de Mzo. de 2023
Comentada: Joanne Hall
el 2 de Mzo. de 2023
Dear Matlab,
Attached is sample data with a row vector.
The row vector is an averaged EEG signal and starts with real numbers and at some point, the real numbers end and the NaNs begin. I want to find where (what column) the NaNs start so that I can trim the NaNs and just have a vector of real number values. Please help/advice.
Thanks in advance!
Joanne
0 comentarios
Respuesta aceptada
the cyclist
el 2 de Mzo. de 2023
Editada: the cyclist
el 2 de Mzo. de 2023
Here are two methods of finding the last index that is not NaN:
load("C.mat","c")
% Method 1
lastNonNanIndex1 = sum(not(isnan(c)))
% Method 2
lastNonNanIndex2 = find(not(isnan(c)),1,"last")
But if you don't need the index, and just want to trim it, then
c(isnan(c)) = []; % Trims the NaN values from the vector
numel(c) % Show the length of the new vector
Más respuestas (0)
Ver también
Categorías
Más información sobre EEG/MEG/ECoG 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!