使用python插值到更大的1D数组

使用python插值到更大的1D数组,python,arrays,signal-processing,interpolation,wavelet,Python,Arrays,Signal Processing,Interpolation,Wavelet,我有五个具有多个长度的1D数组。我希望所有数组的长度都与cD1相同。我想对数组应用插值,使其具有相同的长度。 我尝试使用linear\u interp=interp1d(cD5,cD1),但它不能正常工作。感谢您的帮助 from scipy.interpolate import interp1d coeffs = wavedec(data, 'sym5', level=5) cA5,cD5,cD4,cD3,cD2,cD1=coeffs cD5.shape #(248,) cD4.shape #(

我有五个具有多个长度的1D数组。我希望所有数组的长度都与
cD1
相同。我想对数组应用插值,使其具有相同的长度。 我尝试使用
linear\u interp=interp1d(cD5,cD1)
,但它不能正常工作。感谢您的帮助

from scipy.interpolate import interp1d
coeffs = wavedec(data, 'sym5', level=5)
cA5,cD5,cD4,cD3,cD2,cD1=coeffs
cD5.shape #(248,)
cD4.shape #(488,)
cD3.shape #(967,)
cD2.shape #(1926,)
cD1.shape #(3844,)


据我所知,您缺少一个
x
坐标

尝试为阵列添加通用
x
坐标:

将numpy导入为np
从scipy.interpolate导入interp1d
公共_长度_数据=[]
公共_x=np.linspace(0,1,len(cD1))
对于[cA5,cD5,cD4,cD3,cD2,cD1]中的c:
x=np.linspace(0,1,len(c))
f=1d(x,c)
公共_长度_数据。追加(f(公共_x))

据我所知,您缺少一个
x
坐标

尝试为阵列添加通用
x
坐标:

将numpy导入为np
从scipy.interpolate导入interp1d
公共_长度_数据=[]
公共_x=np.linspace(0,1,len(cD1))
对于[cA5,cD5,cD4,cD3,cD2,cD1]中的c:
x=np.linspace(0,1,len(c))
f=1d(x,c)
公共_长度_数据。追加(f(公共_x))

感谢您提供的解决方案。我得到了这个错误
ValueError:x和y数组沿插值轴的长度必须相等
自从我第一次回答后,我做了一些编辑。你还知道错误吗?没有,非常感谢你的解决方案。我想问一下
linspace中的0和1,它们表示了什么,然后现在
common\u length\u data
一个列表包含所有长度相同的数组???
0
1
linspace
中是x坐标的第一个和最后一个值(特定值应该无关紧要-您可以放置任何其他数字)。是的,
common\u length\u data
是包含请求的数组的列表。非常感谢您的解决方案。感谢您的解决方案。我得到了这个错误
ValueError:x和y数组沿插值轴的长度必须相等
自从我第一次回答后,我做了一些编辑。你还知道错误吗?没有,非常感谢你的解决方案。我想问一下
linspace中的0和1,它们表示了什么,然后现在
common\u length\u data
一个列表包含所有长度相同的数组???
0
1
linspace
中是x坐标的第一个和最后一个值(特定值应该无关紧要-您可以放置任何其他数字)。是的,
common\u length\u data
是包含请求的数组的列表。非常感谢您的解决方案。