我有一个大约 20GB 的巨大数据集。我已经使用 graphlab.SFrame.read_csv() 读取了数据。我有一个日期列,它以 yyyy-dd-mm 格式读取为字符串。但我希望将该列作为日期时间对象读取。我该怎么做?
我知道一种方法是遍历每一行并使用 python 代码更改它。还有其他方法吗?可能更快?
实际上有一个内置的方法graphlab.SArray
。就像 Greg Whittier 的回答一样,假设您的原始日期列被称为datestring
。
import graphlab
sf = graphlab.SFrame.read_csv('input.csv')
sf['datetime'] = sf['datestring'].str_to_datetime('%Y-%d-%m')
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'))