【发布时间】:2012-02-11 18:07:03
【问题描述】:
我有以下代码 sn-p,它将数据从 CSV 文件加载到 numpy.core.records.recarray:
r = mlab.csv2rec(datafile, delimiter=',', names=('dt', 'val'))
data = zip(date2num(r['dt']),r['val']) # Need to filter for records lying between two dates here ...
我只想“压缩”日期介于(例如)“2000-01-01”和 2000-03-01'之间的记录
我了解 lambda 函数的概念 - 但我以前没有使用过它们。如果我可以使用 lambda 过滤所需日期之间的记录,那就太酷了(如下面的伪代码所示):
data = zip(lambda: date2num(r['dt']),r['val'] if r['dt'] > '2000-01-01' and r['dt'] < '2000-03-01' )
根据指定的索引(即日期)从 rec.array 中提取数据子集的 Pythonic 方法是什么?
【问题讨论】:
标签: python numpy matplotlib