我正在尝试根据链接实现PchipInterpolator:
http://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.interpolate.PchipInterpolator.html
我使用的代码是:
x = np.arange(0, 10)
y = np.exp(-x/3.0)
set_interp = scipy.interpolate.PchipInterpolator( x, y, extrapolate=True )
我收到错误:
TypeError: __init__() got an unexpected keyword argument 'extrapolate'
所以,显然我是以错误的方式实现它。我已经尝试了许多其他方法来实现推断,但它失败了。
答案 0 :(得分:1)
PchipInterpolator
在0.14版本中进行了重构,并在extrapolate
关键字增长时进行了重构。
比较版本0.13:http://docs.scipy.org/doc/scipy-0.13.0/reference/generated/scipy.interpolate.PchipInterpolator.html
的文档和版本0.14:http://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.interpolate.PchipInterpolator.html
(免责声明:我参与了该重构)
Scipy 0.13现在已经很老了,最好考虑升级。
在interpolate
的一致性方面,最新的scipy版本略胜一筹。例如,所有基于多项式的插值器(PPoly,BPoly,Pchip和Akima)都具有extrapolate
关键字。
答案 1 :(得分:0)
试试这个:
from scipy import interpolate
import numpy as np
x = np.arange(0, 10)
y = np.exp(-x/3.0)
set_interp = interpolate.PchipInterpolator( x, y, extrapolate=True )
我没有错误