我正在使用来自interpolate.interp1d的Python3内插一维数组。我想和numba一起使用它,但是这个函数是不支持的。是否有numba支持的插值函数,或者用numba进行插值的方法?
发布于 2020-06-25 16:05:27
您可以对一维数组使用numpy的插值函数。您有numba 这里支持的numpy函数列表。
numpy.interp() (只有3个第一个参数;需要NumPy >= 1.10)
如果你不能让它起作用,那就是numba的版本。下面是一个使用与np.interp中相同的示例的工作示例
import numpy as np
from numba import njit
@njit
def interp_nb(x_vals, x, y):
return np.interp(xvals, x, y)
x = np.linspace(0, 2*np.pi, 10)
y = np.sin(x)
xvals = np.linspace(0, 2*np.pi, 50)
y_interp = interp_nb(xvals, x, y)
plt.figure(figsize=(10,6))
plt.plot(x, y, 'o')
plt.plot(xvals, y_interp, '-x')

numba.__version__
# '0.43.1'
np.__version__
# '1.18.1'https://stackoverflow.com/questions/62579492
复制相似问题