Python 如何插值数据帧,以便在给定间隔内对列进行采样?
我有一些数据帧:Python 如何插值数据帧,以便在给定间隔内对列进行采样?,python,pandas,numpy,Python,Pandas,Numpy,我有一些数据帧: time data 1 1 2 2 3.5 3 4.22 5 9.1 3 10.2 4 时间一定在上升 我想要一个数据帧,其中时间列在给定范围内进行插值(开始、停止、步进),并通过某种插值方法对数据列进行相应采样 我希望可以进行外推,这意味着我希望start或stop能够低于最小时间值或大于最大时间值 我该怎么做 我可以接受numpy解决方案,但如果可能的话,我更愿意只呆在pandas内。使用自定义插值函数。大致如下:
time data
1 1
2 2
3.5 3
4.22 5
9.1 3
10.2 4
时间一定在上升
我想要一个数据帧,其中时间列在给定范围内进行插值(开始、停止、步进)
,并通过某种插值方法对数据列进行相应采样
我希望可以进行外推,这意味着我希望start
或stop
能够低于最小时间值或大于最大时间值
我该怎么做
我可以接受numpy解决方案,但如果可能的话,我更愿意只呆在pandas内。使用自定义插值函数。大致如下:
from scipy.interpolate import interp1d
def interpolator(g: pd.Series):
x = [...]
y = [...]
interpolated_array = interp1d(x, y, bounds_error=False, fill_value=0)(g)
return interpolated_array
grouped = df.groupby('column_a')
df['column_intepolated'] = grouped['column_b'].transform(interpolator)
如果您想尝试一下,并努力适应您的数据,请发表评论,我将在这里发布
df=df.interpolate()。反正我也没看到。存在非nan
。我想产生新的价值观。