2.9 结构化数组

本文源码请见我的GitHub

2.9.1 生成结构化数组

1
import numpy as  np
1
np.dtype([('name','S10'),('age','i4'),('weight','f8')])
dtype([('name', 'S10'), ('age', '<i4'), ('weight', '<f8')])
1
2
#如果名称不重要的可以中一个字符串指定
np.dtype('S10,i4,f8')
dtype([('f0', 'S10'), ('f1', '<i4'), ('f2', '<f8')])

2.9.2 高级复合类型

1
2
3
4
tp = np.dtype([('id','i8'),('mat','f8',(3,3))])
X = np.zeros(1, dtype=tp)
print(X[0])
print(X['mat'][0])
(0, [[0., 0., 0.], [0., 0., 0.], [0., 0., 0.]])
[[0. 0. 0.]
 [0. 0. 0.]
 [0. 0. 0.]]