Python插值数据列表

2024-04-20 06:09:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我有这个数据:

X = [[10, 6, 0], [8, 6, 0], [4, 3, 0]]
Y = [[29, 28, 27], [26, 25, 24], [23, 22, 21]]

我需要在X的值之间进行插值。例如:

^{pr2}$

所以结果应该是:

 "D"     "Y[0]"      "Y[1]"   "Y[2]"
  0        27          24        21
  2        ?           ?         ?
  4        ?           ?         23
  6        28          25        ?
  8        ?           26        ?
  10       29          ?         ?

我知道有np.interp()我试过了,它只适用于一维列表:

z =[0,5,10]
v= [29,28,27]
x = np.linspace(10,0,num = 4)
d=np.interp(x, z, v)
print (d)

但如果我有一张单子就不行了。在


Tags: 数据列表npnum单子插值printinterp
1条回答
网友
1楼 · 发布于 2024-04-20 06:09:53

使用zip。而且,看起来您想反转子列表。可能是这样的:

points = np.linspace(0,10,num = 6)

cols = (points,) + tuple(np.interp(points,x[::-1],y[::-1]) for x,y in zip(X,Y))

np.stack(cols,axis=1)

其输出:

^{pr2}$

这显示了插值。似乎您可能希望在某些列的某些条目中使用外推法。在

相关问题 更多 >