How do I create a new array that is a cropped version of another array?

2 views (last 30 days)
I am using a txt file to hold data on an ultrasound signal but I want it so that only a certain section of the data is placed as a different name. I want the user to pick the max and min time axis that holds a peak of interest and do analysis on the cropped signal which would involve moving the data to a different variable name. How do I go about doing this? Example: I have data that goes from to 10 micrometers but I only want the data that is between 4.7 and 5.2 micrometers for peak analysis.

Answers (1)

CS Researcher
CS Researcher on 4 May 2016
Edited: CS Researcher on 4 May 2016
Let us say the vector which contains all the values is t. You can do this:
startLocation = find(t >= 4.7,1);
endLocation = find(t >= 5.2,1);
croppedVector = t(startLocation : endLocation);
This of course assumes that all the values in the vector t are sorted in ascending order. Hope this helps!
  2 Comments
Aoife Monahan
Aoife Monahan on 4 May 2016
Thanks for answering. This is giving me the time values from the specified limits but not the corresponding amplitudes associated with the time values.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!