以天为单位重新采样DataFrame,但保留原始的日期时间索引格式

时间:2019-07-03 14:37:17

标签: python pandas

我有一些滴答数据,我想通过删除每天的第一行和最后一行来进行细化。原始数据帧具有一个datetime64 [ns]索引,其格式为'%Y-%m-%d %H:%M:%S'

为此,我使用了

pd.resample('D').first()
pd.resample('D').last()

并成功采样出每天的第一行和最后一行 问题是当以天为单位重新采样时,原始日期时间索引会转换为'%Y-%m-%d'格式

如何使用重采样以保留原始的日期时间索引格式? 还是有办法在新数据框中重新格式化日期时间索引以显示直到几秒钟?

1 个答案:

答案 0 :(得分:1)

IIUC

您的问题是您每天都要重新采样并每天获得第一个值。但是,您希望包括该第一个值的关联日期。

您还希望在索引中汇总日期。

df.assign(NewDate=df.index).resample('D').first().set_index('NewDate')

或者您可以resample索引并获取最小值

df.loc[df.index.to_series().resample('D').min()]