提问人:BENJAMÍN IBÁÑEZ 提问时间:10/7/2023 最后编辑:Goku - stands with PalestineBENJAMÍN IBÁÑEZ 更新时间:10/7/2023 访问量:64
消除日期时间格式的小数
Eliminate the decimals in a datetime format
问:
我有一个这种格式类型,但数据框中的一些数据具有这种格式类型。如何删除第二种格式类型,以便所有内容都保持第一种格式类型?DataFrame
2018-08-13 00:03:50
2018-08-13 06:34:24.859000
.859000
我需要所有数据都采用以下格式?DataFrame
2018-08-13 00:03:50
答:
1赞
Goku - stands with Palestine
10/7/2023
#1
首先将时间转换为时间戳:
import pandas as pd
your_time = pd.to_datetime('2018-08-13 06:34:24.859000')
print(your_time)
#Timestamp('2018-08-13 06:34:24.859000')
现在,您可以执行以下操作:
your_time.replace(microsecond=0)
#output
Timestamp('2018-08-13 06:34:24')
对于完整的数据帧:
import pandas as pd
df = pd.DataFrame()
df['time'] = ['2018-08-13 06:34:24.859000', '2018-08-13 06:45:24.859000']
#output
time
0 2018-08-13 06:34:24.859000
1 2018-08-13 06:45:24.859000
df['time'] = pd.to_datetime(df['time'])
df['time'] = df['time'].apply(lambda x: x.replace(microsecond = 0))
#output
time
0 2018-08-13 06:34:24
1 2018-08-13 06:45:24
文档链接:https://docs.python.org/3/library/datetime.html#datetime.datetime.replace
评论
0赞
FObersteiner
10/9/2023
您不需要并截断日期时间;在这种情况下,只需使用apply
.dt.floor("s")
评论
DataFrame
DataFrame