从一组元组中获取numpy数组

时间:2015-05-04 04:33:14

标签: python arrays numpy tuples mysql-python

我正在使用numpy,MySQLbb和scipy,最后得到了一个来自MySQL游标执行的元组数组。然后我用了np.fromiter。现在我有一组看起来像这样的元组:

>>> A
array([('bob', 0.43), ('dan', 0.24), ('bill', 0.14)
       ('sharen', 0.28), ..., ('zena', 0.24), ('zoe', 0.39)],
      dtype = [('f0', 'S10'), ('f1', '<f4')])

如何为每个元组的第一部分创建一个numpy数组?我试过了:

>>> Names = A[:][0]

我也尝试过:

>>> Names = np.array(A[:][0])

但那不起作用;只给了我第一个元组。我找不到该特定示例的任何文档。

我想要一个像这样的numpy数组:

>>> Names 
array[('bob', 'bill', all the other names...
>>> Numbers
array[(0.43, 0.24, etc...

提前致谢。

1 个答案:

答案 0 :(得分:3)

你得到的是recarray

数组中的第一个字段名为“f0”。您可以从dtype部分(A.dtype)告诉您。

您可以A['f0']A.f0访问它。

Names = A.f0
Numbers = A.f1