Pandas时间戳列在读取红移时出现问题



我有一个看起来像这样的数据框架

d = {'Timestamp': ['Nov 16 10:39:54', 'Nov 16 10:39:54', 'Nov 16 10:39:54', 'Nov 16 10:39:54', 'Nov 16 10:40:17']}
df_sample = pd.DataFrame(data=d)
df_sample.head()

当我试图将其加载到表中时,Redshift似乎抛出了一个错误。我得到这个错误

ProgrammingError: {'S': 'ERROR', 'C': '42601', 'M': 'syntax error at or near "Full"', 'P': '88', 'F': '/home/ec2-user/padb/src/pg/src/backend/parser/parser_scan.l', 'L': '732', 'R': 'yyerror'}

它可以是一个不同的列,但我如何将其转换为更正常的数据时间?

你想

df_sample["iso8601"] = pd.to_datetime(
"2022 " + df_sample.Timestamp, format="%Y %b %d %H:%M:%S"
)
print(df_sample.tail(3).set_index("iso8601"))

输出
Timestamp
iso8601                             
2022-11-16 10:39:54  Nov 16 10:39:54
2022-11-16 10:39:54  Nov 16 10:39:54
2022-11-16 10:40:17  Nov 16 10:40:17

请注意将这些视为UTC时间戳,与当地时区不同的是,因为没有捆绑区域信息还有那些数据

最新更新