2024-04-19 10:40:45 发布
网友
目前我正在使用for循环,这需要很多时间:
for i in range (0,len(df)): df['time1[i]']=(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(df.time[i])))
有人能建议一种没有循环和更快的方法吗?你知道吗
您只需将pd.to_datetime与unit = 'ms'一起使用即可。如果您有其他时间单位,如秒、分钟,则可以在单位部分中指定。你知道吗
pd.to_datetime
unit = 'ms'
time 1527910027791 1527911500516 df['time'] = pd.to_datetime(df['time'], unit='ms') print(df) 2018-06-02 03:27:07.791 2018-06-02 03:51:40.516
如果您的时间戳是UTC,那么您可以简单地转换为本地时间
df['time'] = pd.to_datetime(df['time'], unit= 'ms').dt.tz_localize('utc') \ .dt.tz_convert(tz='USE YOUR TIME ZONE HERE').apply \ (lambda x: datetime.replace(x, tzinfo=None))
如果需要GMT+几个小时之类的信息,那么可以忽略上面使用apply和lambda的代码
apply
lambda
您只需将
pd.to_datetime
与unit = 'ms'
一起使用即可。如果您有其他时间单位,如秒、分钟,则可以在单位部分中指定。你知道吗如果您的时间戳是UTC,那么您可以简单地转换为本地时间
如果需要GMT+几个小时之类的信息,那么可以忽略上面使用
apply
和lambda
的代码相关问题 更多 >
编程相关推荐