7

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

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

4

2 回答 2

7

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

import graphlab
sf = graphlab.SFrame.read_csv('input.csv')
sf['datetime'] = sf['datestring'].str_to_datetime('%Y-%d-%m')
于 2015-11-26T20:28:09.047 回答
3
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'))
于 2015-11-26T18:37:10.747 回答