0

我有一个数组数组:

x = [np.array([np.linspace(3000,7000, 1000.0)]), np.array([np.linspace(4000,8000, 1000.0)]), np.array([ np.linspace(2000,9000, 1000.0)])]

y = [np.array([np.linspace(10,200, 1000.0)]), np.array([np.linspace(20,200, 1000.0)]), np.array([np.linspace(30,200, 1000.0)]]

这样我的 x 数组中的一部分在 6520 和 6620 之间

xgrid=np.linspace(6520,6620, 1000.0)

我想插值

ygrid= np.interp(np.array(xgrid), x, y)

我不知道如何调整我的代码以纠正错误(ValueError: setting an array element with a sequence)

4

1 回答 1

1

当我应用你的代码时,我得到一个不同的错误,所以我会清理一些部分:

x = np.asarray([np.linspace(3000, 7000, 1000.0), np.linspace(4000, 8000, 1000.0), np.linspace(2000, 9000, 1000.0)])
y = np.asarray([np.linspace(10, 200, 1000.0), np.linspace(20, 200, 1000.0), np.linspace(30, 200, 1000.0)])
xgrid = np.linspace(6520,6620, 1000.0)

因为 numpy.interp 只接受一维对象:

ygrid = np.array([np.interp(xgrid, i, j) for i, j in zip(x, y)])
于 2013-10-17T14:35:27.917 回答