SFrame 中的字符串对象到日期时间对象

String object to dateTime object in SFrame

我有一个大约 20GB 的庞大数据集。我已经使用 graphlab.SFrame.read_csv() 读取了数据。我有一个日期列,它被读取为格式为 yyyy-dd-mm 的字符串。但我希望将该列作为日期时间对象读取。我该怎么做?

我知道一种方法是遍历每一行并使用 python 代码更改它。还有别的办法吗?可能会更快?

import graphlab
import datetime as dt
sf = graphlab.SFrame.read_csv('input.csv') # dates in datestring column
sf['datetime'] = sf['datestring'].apply(lambda x: dt.datetime.strptime(x, '%Y
-%d-%m'))

graphlab.SArray 中实际上有一个内置方法。就像 Greg Whittier 的回答一样,假设您的原始日期列称为 datestring.

import graphlab
sf = graphlab.SFrame.read_csv('input.csv')
sf['datetime'] = sf['datestring'].str_to_datetime('%Y-%d-%m')