首页 > 解决方案 > 获取索引属于另一个数据帧索引的数据帧行

问题描述

如何获取索引属于另一个数据帧索引的数据帧(DateTimeIndex)中的所有行(没有指定时间的DateTimeIndex)?

例如,

我有一个数据框(df1),其中包含多天的数据,但仅在下午 2 点到 6 点之间。我有另一个数据框(df2),其中包含多天的数据,但没有指定小时。如何访问 df1 中 df2 中的所有行?

以下是 df1 和 df2 的部分快照,

在此处输入图像描述

在此处输入图像描述

标签: pythonpandasdataframe

解决方案


IIUC,您可以isin在索引上:

df1.index = pd.to_datetime(df1.index)
df2.index = pd.to_datetime(df2.index)

df1 = df1.loc[df1.index.isin(df2.index),:]

或者:

df1 = df1.loc[df1.index.floor('D').isin(df2.index),:]

推荐阅读