Deleting Values Less Than Maximum Value
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
mike
el 7 de Dic. de 2014
Comentada: mike
el 7 de Dic. de 2014
Hey guys,
I imported an excel sheet (force and strain values from a tensile test) and when I removed the extensometer, the strain values repeat themselves. The maximum value of the strain occurs when the extensomoter is removed and after that, the strain repeats itself until the test is over. I was wondering if there was a loop I could write that would remove the repeating strain values so I can plot them.
So far I have tried:
for Strain_Norm == Strain_Max
Strain_Norm = [];
for Strain_Norm < Strain_Max
Strain = Strain_Norm;
end
end
I want to be able to just plot the strain values that do not repeat themselves. I know I can use the unique function, but some of my data points repeat themselves once or twice before the extensometer is removed, and I will still like to plot those points.
I am new at Matlab and am wondering if that is even the correct syntax I appreciate all and any help THanks!
1 comentario
Star Strider
el 7 de Dic. de 2014
It might be helpful if you plotted your raw data and then uploaded a .png of the plot here. (The easiest way is to use the figure UI functions to save the plot as a .png image.) Then upload it here using the ‘picture’ icon.
Right now, we’re just guessing what your data look like. The problem with that is that we may not all be guessing the same thing.
Respuesta aceptada
Image Analyst
el 7 de Dic. de 2014
Editada: Image Analyst
el 7 de Dic. de 2014
I answered something fairly similar to that in your duplicate question http://www.mathworks.com/matlabcentral/answers/165706#comment_254347
Try this:
% Find rows that have strain values of "the maximum strain value";
rowsToDelete = strain >= Strain_Max;
% We don't want those rows because they are bad data.
% So delete those rows from the strain array.
strain(rowsToDelete) = [];
% Delete those rows from the force array also.
force(rowsToDelete) = [];
You might want to do
rowsToDelete = strain >= (Strain_Max - tolerance);
just in case there are values that are pretty high - higher than acceptable - but not exactly the max.
Más respuestas (0)
Ver también
Categorías
Más información sobre Legend 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!