如何将Python字典对象转换为numpy数组
我有一个python dict对象,其中键为datetime.date对象,值为元组对象:如何将Python字典对象转换为numpy数组,python,numpy,Python,Numpy,我有一个python dict对象,其中键为datetime.date对象,值为元组对象: >>> data_dict {datetime.date(2006, 1, 1): (5, 3), datetime.date(2006, 1, 2): (8, 8), datetime.date(2006, 1, 3): (8, 5), datetime.date(2006, 1, 4): (3, 3), datetime.date(2006, 1, 5): (3, 3),
>>> data_dict
{datetime.date(2006, 1, 1): (5, 3),
datetime.date(2006, 1, 2): (8, 8),
datetime.date(2006, 1, 3): (8, 5),
datetime.date(2006, 1, 4): (3, 3),
datetime.date(2006, 1, 5): (3, 3),
datetime.date(2006, 1, 6): (4, 3),
...
我想将其转换为numpy数组对象,格式如下:
dtype([('date', '|O4'), ('high', '<i1'), ('low', '<i1')])
dtype([('date','O4'),('high','p>以下内容将完成此操作:
arr = np.array([(k,)+v for k,v in data_dict.iteritems()], \
dtype=[('date', '|O4'), ('high', '<f8'), ('low', '<f8')])
这将使您能够按名称引用字段,例如,arr.date
小方注:dict似乎需要排序(data_dict.iteritems())
arr = arr.view(np.recarray)