Python 在“我的时间”列中,datetime最多只有几分钟
我从我们的服务器中提取信息,时间列一直到纳秒。我需要合并多个dfs,这种特殊性导致我的脚本返回一个空df 我尝试使用:Python 在“我的时间”列中,datetime最多只有几分钟,python,pandas,datetime,Python,Pandas,Datetime,我从我们的服务器中提取信息,时间列一直到纳秒。我需要合并多个dfs,这种特殊性导致我的脚本返回一个空df 我尝试使用: df['Time'] = pd.to_datetime(df['Time'], format="%d-%m-%y %H:%M") 但我不相信我试图做的是通过“格式”参数来完成的 我打算将时间列转换为字符串,然后解析为正确的字符数,但我确实希望避免转换为字符串,然后返回到datetime 我想用to_datetime()来做什么?或者我必须转换成字符串,解析并转换回dateti
df['Time'] = pd.to_datetime(df['Time'], format="%d-%m-%y %H:%M")
但我不相信我试图做的是通过“格式”参数来完成的
我打算将时间列转换为字符串,然后解析为正确的字符数,但我确实希望避免转换为字符串,然后返回到datetime
我想用to_datetime()来做什么?或者我必须转换成字符串,解析并转换回datetime吗?您可以在时间戳上使用round()方法将列转换为您想要的分辨率
比如说
import pandas as pd
import datetime
pd.to_datetime(datetime.datetime.now()).round('H')
返回
Timestamp('2019-12-11 22:00:00')
因为它将当前时间(纳秒频率)转换为最接近的小时。您可以尝试以下方法:
df = df.assign(Time=df.loc[:, 'Time'].apply(lambda x: datetime.strptime(x, "%d-%m-%y %H:%M")))
根据时间列的当前值和格式,将第一个数据帧替换为具有日期时间值的df['Time']的数据帧