我必须将一个非常大(170 万条记录)的 csv 文件读取到一个 numpy 记录数组中。其中两列是需要转换为日期时间对象的字符串。此外,一列需要是这些日期时间之间的计算差异。
目前,我制作了一个自定义迭代器类,用于构建列表列表。然后我使用 np.rec.fromrecords 将其转换为数组。
但是,我注意到多次调用 datetime.strptime() 确实会减慢速度。我想知道是否有更有效的方法来进行这些转换。时间在日期范围内精确到秒。因此,假设时间是均匀分布的(它们不是),似乎我正在做 20 倍以上的必要转换(170 万/(60 X 60 X 24)。
将转换后的值存储在字典 {string dates: datetime obj} 中并在进行不必要的转换之前首先检查字典会更快吗?
或者我应该使用 numpy 函数(我还是 numpy 库的新手)?