由于Pandas和Athena读取日期时间格式的方式,我不得不操纵几列才能以有效的格式获取数据。
其中涉及将字符串转换为日期时间
df["serviceStartTimestamp"] = pd.to_datetime(df["serviceStartTimestamp"])
returning
0 2019-08-07 08:04:43.942000+00:00
1 2019-08-07 08:13:48.397000+00:00
2 2019-08-07 09:02:29.067000+00:00
然后运行这个
df["serviceStartTimestamp"] = pd.to_datetime(df["serviceStartTimestamp"].astype("str").str.split("+", expand=True)[0])
returning
0 2019-08-07 08:04:43.942
1 2019-08-07 08:13:48.397
2 2019-08-07 09:02:29.067
如果datetime列中包含任何其他数字,则它们会在雅典娜中弄乱,
但是我目前如何解决它似乎效率低下,所以我想知道是否有更好的方法?
最佳答案
您需要通过format='%Y-%m-%d %H:%M:%S.%f'
。
pd.to_datetime(df["serviceStartTimestamp"].dt.strftime('%Y-%m-%d %H:%M:%S.%f')
输出:
0 2019-08-07 08:04:43.942
1 2019-08-07 08:13:48.397
2 2019-08-07 09:02:29.067
关于python - 为雅典娜处理 Pandas 中的日期时间格式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57925488/