Кусочно-постоянная или сплайн-интерполяция с нулевым углом в Python/Scipy

Несмотря на то, что в документации scipy указано, что scipy.interpolate. UnivariateSpline будет выполняться для порядка k‹=5, внутри есть дополнительное ограничение для порядка >=1. Кто-нибудь знает способ добиться сплайна с нулевым углом или кусочно-постоянной интерполяции с помощью Numpy/Scipy?


person Benjamin    schedule 27.06.2015    source источник
comment
Разве это не то, что вы хотите здесь? docs.scipy.org/doc/scipy/reference/interpolate.html   -  person jcoppens    schedule 27.06.2015


Ответы (2)


Вы можете использовать interp1d с kind='zero' или kind='nearest'.

person ev-br    schedule 27.06.2015

Я попробовал простой трюк 1) выполните численное интегрирование пошаговой постоянной функции, и вы получите ломаную линию 2) используйте 1. соответствие сплайна степени 3) вычислите производную сплайна (метод .derivative())

это сработало, но могло быть и лучше.

person Tomas    schedule 19.08.2015