假设我有一些简单的数据 y = [[datetime.datetime( 2012,1,1),2.1],[datetime.datetime( 2012,2),-3.1],3),0.1]]
... . . 假设我有一些简单的数据
y = [[datetime.datetime( 2012,1,1),2.1],[datetime.datetime( 2012,2),-3.1],3),0.1]]
我想要一个与之对应的numpy记录数组.看起来我应该能够做到这一点:
np.rec.array( y,dtype=[('timestamp',object),('x','f')] )
或这个
np.rec.array( y,'|O8'),'f')] )
或许这个
np.rec.array( y,'V'),'f')] )
但他们每个人都会返回一个错误
ValueError: Setting void-array with object members using buffer.
要么
TypeError: expected a readable buffer object
那么假设它甚至可能,我怎么能设置它呢?
.解决方法
. 您可以使用元组而不是列表来记录:
>> y = [(datetime.datetime( 2012,2.1),... (datetime.datetime( 2012,-3.1),0.1)]>> np.rec.array(y,'f')])rec.array([(datetime.datetime(2012,2.0999999046325684),(datetime.datetime(2012,-3.0999999046325684),0.10000000149011612)],'<f4')]). . .. ...