尽管Scipy的文档表明scipy.interpolate.UnivariateSpline将在阶数k〈=5上运行,但在引擎盖下,对于阶数〉=1有一个额外的约束。有人知道用Numpy/Scipy实现0次样条或分段常数插值的方法吗?
vyu0f0g11#
您可以将interp1d与kind='zero'或kind='nearest'搭配使用。
interp1d
kind='zero'
kind='nearest'
txu3uszq2#
我尝试了一个简单的技巧1)做逐步常数函数的数值积分,你会得到折线2)使用1.度样条拟合3)计算样条的导数(方法.derivative())它已经起作用了,但还可以更好。
2条答案
按热度按时间vyu0f0g11#
您可以将
interp1d
与kind='zero'
或kind='nearest'
搭配使用。txu3uszq2#
我尝试了一个简单的技巧1)做逐步常数函数的数值积分,你会得到折线2)使用1.度样条拟合3)计算样条的导数(方法.derivative())
它已经起作用了,但还可以更好。