I need to replace some values with NaN and some values with zeros
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Hi every one can help
in annexed figure I have table in left handside gives its corresponding curves and I want to replace some values in z1, z2, and z3 to be NaN and replace some values of zb to be zeros by using Matlab If -Condition ro get the right handside that gives the corresponding curves
Thanks in advance
M. Dahab
2 comentarios
Arif Hoq
el 2 de Feb. de 2023
what is the condition?
if gBt >= any value
z1= ????
elseif gBt == any value
z2= ????
end
Respuestas (1)
Voss
el 2 de Feb. de 2023
Editada: Voss
el 2 de Feb. de 2023
I've entered the values from your left-hand table into Excel and saved the attached xlsx file.
Read the file into a matrix and plot z1, z2, z3, and zb vs xc:
M = readmatrix('data.xlsx');
figure();
plot(M(:,1),M(:,3:end))
set(gca(),'YDir','reverse');
Modify the matrix by replacing certain elements with 0 or NaN:
% where gBt is not close to 0.808269 ...
idx = abs(M(:,2) - 0.808269) > 1e-6;
% ... replace z1, z2, z3 with NaN ...
M(idx,3:end-1) = NaN;
% ... and replace zb with 0
M(idx,end) = 0;
Plot again, with new M for comparison:
figure();
plot(M(:,1),M(:,3:end))
set(gca(),'YDir','reverse');
You can use similar steps on your data.
8 comentarios
Voss
el 9 de Feb. de 2023
You can substitute "another value" you want to use in place of the NaN in the code above.
Ver también
Categorías
Más información sobre NaNs 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!