MATLAB Answers

How to find values for corresponding elements

1 view (last 30 days)
I have a code that when applied to hourly discharge data, it gives the possition of peaks in the data serries. now i want to optain a peak time serries in a vector that has the same length of discharge but only have the peak discharges and the rest are NaN. can anyone help please?? i have included an example to clarify what i need
time(hr) Q given output(hr) wanted output
1 1 3 NaN
2 3 7 NaN
3 5 5
4 3 NaN
5 1 NaN
6 2 NaN
7 6 6
8 2 NaN
9 1 NaN

Accepted Answer

Walter Roberson
Walter Roberson on 15 Apr 2021
wanted_output = nan(length(time_vector),1);
mask = islocalmax(Q);
wanted_output(mask) = Q(mask);
Walter Roberson
Walter Roberson on 16 Apr 2021
given_output(end+1:length(time_vector)) = nan;

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!