将字母数字值转换为日期

3
我从数据源中得到了一个日期字段的值a1523245800。我想知道如何将这个值转换为日期dtype类型?我已经尝试使用pandas.to_datetime,但似乎不起作用。谢谢。
以下是我的代码:
pd.to_datetime([`a1523245800`], errors='coerce')

以下是上述代码的输出结果:
DatetimeIndex(['NaT'], dtype='datetime64[ns]', freq=None)

1
你的代码在哪里?你尝试了什么?什么都没有吗?请清晰地发布你的代码,编辑并避免被踩。 - user9563458
1个回答

2

使用 str[1:] 删除 a 以删除第一个字符,或使用str.extract 获取数字部分,然后使用带有参数unitto_datetime

df = pd.DataFrame({'date':['a1523245800','a1523245800']})

df['date1'] = pd.to_datetime(df['date'].str[1:], unit='s')

或者:

df['date1'] = pd.to_datetime(df['date'].str.extract('(\d+)', expand=False), unit='s')
print (df)

          date               date1
0  a1523245800 2018-04-09 03:50:00
1  a1523245800 2018-04-09 03:50:00

1
运行得很好。我正在使用pd.to_datetime,但不知道kwargs 'unit='s''! - Siraj S.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接