数据帧的径向插值



我有一个数据帧(120238(,其中有12个值。我正在尝试使用径向插值来填充剩余的空点。为此,我创建了一个包含这些点的坐标的列表,以及另一个包含每个点的值的列表。

for i in range(238):
col.append('')
df_map = pd.DataFrame(columns = col, index = range(120))
x_rbf = [8, 227, 19, 116, 11, 223, 5, 231, 116, 116, 13, 222] #x represents the columns
y_rbf = [59, 59, 102, 111, 17, 17, 9, 9, 62, 17, 7, 7] #y represents the rows
z_rbf = [16.2,15.99,16.2,16.3,15.7,15,14.2,14.2,16.4,16.4,13,11]
y = x_rbf, y_rbf
f = scipy.interpolate.RBFInterpolator(y,z_rbf)

然而,当我运行此代码时,我会得到以下错误">

ValueError: Expected the first axis of `d` to have length 2.

有人知道怎么绕过这个吗?

经过无数次尝试,我发现了使用RBF插值器的问题。x和y坐标必须被展平(使用np.rave(((,然后堆叠成一个阵列

for i in range(238):
col.append('')
df_map = pd.DataFrame(columns = col, index = range(120))
x_rbf = [8, 227, 19, 116, 11, 223, 5, 231, 116, 116, 13, 222] #x represents the columns
y_rbf = [59, 59, 102, 111, 17, 17, 9, 9, 62, 17, 7, 7] #y represents the rows
z_rbf = [16.2,15.99,16.2,16.3,15.7,15,14.2,14.2,16.4,16.4,13,11]
sp = np.stack([y_rbf.ravel(),x_rbf.ravel()],-1)
f = scipy.interpolate.RBFInterpolator(sp,z_rbf.ravel(), kernel = 'linear')

应该这样工作

相关内容

  • 没有找到相关文章

最新更新