我有多组数据要在Scipy中拟合单变量样条:
spl = UnivariateSpline(x, y)
domain = np.linspace(min(x), max(x)), 10000)
plt.scatter(x, y, c='r', marker='x')
plt.plot(domain, spl(domain), 'b-')
这是一个“嘈杂的”示例集,其y的趋势必须随x增加,但不是样条曲线所返回的(参见下文)。
是否有一种方法可以评估此样条使其梯度始终为正?这将非常有帮助。
不是开箱即用。
FITPACK,UnivariateSpline包装的fortran库,具有一些受约束的样条拟合,但未在python级别公开。如果确实要包装它,请考虑发送拉取请求。