Azzera filtri
Azzera filtri

Deleting Values Less Than Maximum Value

2 visualizzazioni (ultimi 30 giorni)
mike
mike il 7 Dic 2014
Commentato: mike il 7 Dic 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 Commento
Star Strider
Star Strider il 7 Dic 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.

Accedi per commentare.

Risposta accettata

Image Analyst
Image Analyst il 7 Dic 2014
Modificato: Image Analyst il 7 Dic 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.
  1 Commento
mike
mike il 7 Dic 2014
Thanks! Sorry I didn't realize I asked the same question twice

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Line Plots in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by