我有一个数据集,其中包含了来自锻炼数据(心率、瓦特等)的1秒级样本。数据馈送并不完美,有时还存在差距。我需要有数据集在1秒的间隔没有丢失的行。你知道吗
一旦我对数据进行了重新采样,它看起来就像这样:
activity_id watts
t
1 12345 5
2 12345 NaN
3 12345 15
6 98765 NaN
7 98765 10
8 98765 12
在重采样后,我不能得到插值正常工作。问题是,插值将贯穿整个数据帧,我需要它为数据帧中的每个训练ID“重置”。数据在正常工作后应该是这样的:
activity_id watts
t
1 12345 5
2 12345 10
3 12345 15
6 98765 NaN
7 98765 10
8 98765 12
这是我试过的一段代码。它不抛出任何错误,但也不做插值。。。你知道吗
seconds = 1
df = df.groupby(['activity_id']).resample(str(seconds) + 'S').mean().reset_index(level='activity_id', drop=True)
df = df.reset_index(drop=False)
df = df.groupby('activity_id').apply(lambda group: group.interpolate(method='linear'))
此处标记为正确答案,但不适用于我: Pandas interpolate within a groupby
目前没有回答
相关问题 更多 >
编程相关推荐