3

我有日期作为字符串(例如:2020 年 3 月 24 日),我想将其转换为datetime64[ns]格式

df2['date'] = pd.to_datetime(df1["str_date"], format='%m/%d/%Y')

to_datetime在 vaex 数据帧上使用 pandas会导致错误:

ValueError: time data 'str_date' does not match format '%m/%d/%Y' (match)

我看到了可能重复的问题

df2['pdate']=df2.date.astype('datetime64[ns]')

然而,答案是类型转换。我的案例需要格式 ('%m/%d/%Y') 将字符串解析为datetime64[ns],而不仅仅是类型转换。

解决方案:制作自定义函数,然后.apply

4

1 回答 1

4

vaex可以使用apply函数进行对象操作,因此您可以使用datetimenp.datetime64转换每个日期字符串,然后应用它。

import numpy as np
from datetime import datetime

def convert_to_datetime(date_string):
    return np.datetime64(datetime.strptime(str(date_string), "%Y%m%d%H%M%S"))

df['date']  = df.date.apply(convert_to_datetime)
于 2020-11-11T02:25:50.523 回答