find values around peak

1 次查看(过去 30 天)
Fabian Laumen
Fabian Laumen 2021-2-11
Hey guys,
i have a very simple question. I have a file/array with one million values and a peak. I need to find a way to get 5000 values around this peak in positive and negative direction. In the end i need an array with 10001 values in the direction from the original file/array.
thanks in advance

回答(1 个)

Image Analyst
Image Analyst 2021-2-11
Try this:
[maxValue, indexOfMax] = max(signal);
index1 = max([1, indexOfMax - 5000]); % Don't allow less than 1.
index2 = min([indexOfMax + 5000, length(signal)]); % Don't allow more than the length of your signal.
output = signal(index1 : index2); % Extract
If you have clipping because one index is outside the range, and you still need 10,000 elements, then you can take a few more steps to ensure that.

产品


版本

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by