Replace some values to NaN using a condition found in a second vector
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Thaís Lobato Sarmento
el 24 de Mzo. de 2022
Respondida: Thaís Lobato Sarmento
el 24 de Mzo. de 2022
Hello everyone!
I am trying to clean a time series and I am having some trouble.
I have a variable DOY, which contains the day of the year and a variable H, which contains the data I am trying to clean. They are both 1200x1 in size.
Example: Between the days 321 and 330, I want every H>30 to be replaced with NaN. I don't want to simply create new variables because I have lots of conditions like this one to apply to the data.
I tried solutions like:
idx = find(DOY>=321 & DOY<=330);
if H(idx)>30
H(idx) = NaN;
end
In this one, nothing happened; Then, I tried multiple versions with a while loop, and the last one was that:
while true
idx = H<=9.6;
H(idx) = NaN;
if ~find(DOY>=330 && DOY<=336.3)
break
end
end
In all my while loops I get the same error "Operands to the || and && operators must be convertible to logical scalar values."
I wrote in different ways and still can fix this.
Thank you in advance for any tips you can give me!
0 comentarios
Respuesta aceptada
Más respuestas (1)
Ver también
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!