我一直看到这个问题的datetime的情况,但没有一个只有时间。
我有一个这样的时间栏:
0 16:19:01.600000
1 16:20:02.700000
2 16:20:18
3 16:21:03.400000
4 16:21:49.200000
要将时间四舍五入到秒,所以它是16:19:02,16:20:03,等等,我尝试先用下面的代码将时间列转换为datetime:
# Converting time to datetime (again)
pd.to_datetime(trip_28["time"], format="%H:%M:%S")
返回:
unconverted data remains: .600000
那么意图是使用:
# Rounding the time column to seconds
trip_28["time"] = trip_28["time"].dt.floor('1s')
我怎样才能使它工作?
尝试pd.DatetimeIndex.round,频率设置为S
从docs
pd.Series(rng).dt.round("H")
0 2018-01-01 12:00:00
1 2018-01-01 12:00:00
2 2018-01-01 12:00:00
用freq='S'
:
>>> pd.to_datetime(df['Date']).dt.round(freq='S')
0 2021-08-03 16:19:02
1 2021-08-03 16:20:03
2 2021-08-03 16:20:18
3 2021-08-03 16:21:03
4 2021-08-03 16:21:49
Name: Date, dtype: datetime64[ns]