合并并填充Pandas中不同时间间隔的两个数据帧

2024-09-28 23:33:41 发布

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

我有两个数据帧要合并到Pandas中。它们都有一个datetime列,我正在合并它,但是其中一个每分钟和5分钟(取决于年份)有行,而另一个dataframe每15分钟有一行。如果我做一个外部联接,我可以合并它们,但是只有每15分钟一次的行才会有来自两个数据帧的数据。我想复制15分钟的数据,并用这些数据填充1到5分钟的每一行。因此,12:00AM的数据将填充12:14AM之前(包括12:14AM)的所有行。然后,12:15会被复制并填写到12:29等等。这有意义吗?我怎样才能做到这一点?This question看起来很相似,但我不确定如何实现我的确切场景,尤其是考虑到我的一个数据帧的间隔时间在不同的年份从5分钟变为1分钟。在


Tags: 数据dataframepandasdatetime场景this意义question
2条回答

回答老问题希望能帮助别人。在

我有一个类似的问题,但是除了两个带有时间戳的数据帧之外,我还有一个额外的列,定义15~15分钟的数据在我的1~1分钟数据内是否匹配。它就像merge中on参数上使用的键,但是由于我有这些额外的数据,所以不能使用pd合并直接。在

我发现这个函数可以直接求解,包括使用参数by的部分额外信息。在

https://pandas.pydata.org/pandas-docs/stable/generated/pandas.merge_asof.html

文档上的例子非常简单。在

您需要重新对两个数据系列进行采样,以便它们具有相同的间隔,并使用方法“ffill”填充

df1 = df1.resample('m').fillna(method = 'ffill')
df2 = df2.resample('m').fillna(method = 'ffill')

相关问题 更多 >