Python在数组的每一列上应用函数
我尝试将插值单变量样条函数用作:Python在数组的每一列上应用函数,python,scipy,Python,Scipy,我尝试将插值单变量样条函数用作: from scipy.interpolate import InterpolatedUnivariateSpline A = np.array([1,2,3,4,5]) B = np.array([11,34,56,78,19]) C = np.random.normal(0, 1, (500, 30)) model = InterpolatedUnivariateSpline(A, B, k = 1) C2 = model(C) #fails with err
from scipy.interpolate import InterpolatedUnivariateSpline
A = np.array([1,2,3,4,5])
B = np.array([11,34,56,78,19])
C = np.random.normal(0, 1, (500, 30))
model = InterpolatedUnivariateSpline(A, B, k = 1)
C2 = model(C) #fails with error object too deep for desired array
C2 = model(C[:,0]) #works but is not useful as I need inter-/extra-polation for entire C
那么,如何将该函数应用于数组C的所有元素
编辑:scipy版本:0.13.2如果我理解正确,您可以使用列表理解:
C2 = [model(i) for i in C]
它将在所有元素上运行“model”,并返回列表将您的
scipy
升级到0.16.1版,它将适用于您的多维数组,即:
C2 = model(C)
有效。C2=型号(C)
对我有效。您使用的是哪个版本的scipy
?