InterpolatedUnivariateSpline允许外推:
ext :int或str,optional控制不在结节序列定义的区间内的元素的外推模式。
- 如果ext = 0或'extrapolate',则返回外推值。
- 如果ext = 1或'zeros',则返回0
我有一维网格,但我需要外推,这就是为什么我使用这个功能,尽管存在专门为网格编写的插值方法。我按如下方式使用它:
interpolateMe = InterpolatedUnivariateSpline(
np.hstack((0, x[:, idx)),
np.hstack((0, c[:, idx)), k=1)
现在,我有一个类似的问题,但我有一个矩阵
而不是矢量zeros2d = np.zeros((1, x.shape[1],))
interpolateMe = InterpolatedUnivariateSpline(
np.hstack((0, x[:, :])),
np.hstack((0, c[:, :])), k=1)
然而,这不起作用,因为该功能仅适用于矢量输入:
too many axes: 2 (effrank=2), expected rank=1
所以现在我想知道该怎么做。这是瓶颈的一部分,因此效率很重要。
我做了2次连续的1D插值,如果这是最有效的话。我看了SmoothBivariateSpline,但它缺乏处理外推的能力是一个主要的缺点。