При применении к кубическому сплайну interp1d `find_peaks 'возвращает позицию индекса, а не значения - PullRequest
0 голосов
/ 09 октября 2018

У меня есть данные, к которым я применил кубический сплайн с использованием interp1d (при условии, что x и y были предварительно определены)

f2 = interp1d(x, y, kind='cubic')
xnew = np.linspace(start, end, num=501, endpoint=True)
spline = np.array(f2(xnew))

если я проверю это, я получу ожидаемые значения

print(spline)
[ 2.737e-02  5.0504e-02  ....]

Однако мне нужно определить пики в сплайне, и я использую find_peaks из Numpy Signal

peaks = signal.find_peaks(spline)

Но это возвращает ряд позиций индекса, тогда как я пытаюсь вернуть фактические пиковые значениямассив сплайнов.

print(peaks)

(array([ 15, 123, 290, 432]), {})

Чтение документов (https://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.find_peaks.html) это не похоже на ожидаемое поведение (хотя вполне возможно, что я неправильно понял). Любые предложения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...