pandas从datetime索引中删除秒数

Run*_*ean 6 python indexing seconds pandas

我有一个名为'df'的pandas dataFrame,如下所示

                       value    
2015-09-27 03:58:30    1.0  
2015-09-27 03:59:30    1.0  
2015-09-27 04:00:30    1.0  
2015-09-27 04:01:30    1.0
Run Code Online (Sandbox Code Playgroud)

我只想删除秒数来获得这个

                       value    
2015-09-27 03:58:00    1.0  
2015-09-27 03:59:00    1.0  
2015-09-27 04:00:00    1.0  
2015-09-27 04:01:00    1.0
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

香港专业教育学院尝试过像

df.index.to_series().apply(datetime.replace(second=0, microsecond=0))
Run Code Online (Sandbox Code Playgroud)

但我总是得到错误

TypeError: descriptor 'replace' of 'datetime.datetime' object needs an argument
Run Code Online (Sandbox Code Playgroud)

Nic*_*eli 16

您可以使用datetime.replace如图所示更改第二个属性:

df.index = df.index.map(lambda x: x.replace(second=0))
Run Code Online (Sandbox Code Playgroud)

图片

  • https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.dt.round.html 看起来更好,从 /sf/answers/3038025931/ 学习 (3认同)