numpy.core.records.array #
- 核心.记录。array ( obj , dtype = None , shape = None , offset = 0 , strides = None , formats = None ,名称= None , titles = None , aligned = False , byteorder = None , copy = True ) [来源] #
从各种对象构造记录数组。
通用记录数组构造函数,
recarray
根据输入分派到适当的创建函数(请参阅注释)。- 参数:
- 任意对象
输入对象。有关如何处理各种输入类型的详细信息,请参阅注释。
- dtype数据类型,可选
数组的有效数据类型。
- shape int 或整数元组,可选
每个阵列的形状。
- 偏移量int,可选
文件或缓冲区中开始读取的位置。
- strides整数元组,可选
Buffer ( buf ) 根据这些步幅进行解释(步幅定义每个数组元素、行、列等在内存中占用多少字节)。
- 格式、名称、标题、对齐、字节顺序
如果
dtype
是None
,则将这些参数传递给numpy.format_parser
构造数据类型。请参阅该函数以获取详细文档。- 复制布尔值,可选
是否复制输入对象(True),或使用引用。此选项仅适用于输入为 ndarray 或 recarray 的情况。默认为 True。
- 返回:
- np.recararray
从指定对象创建的记录数组。
笔记
如果obj是
None
,则调用recarray
构造函数。如果 obj是字符串,则调用fromstring
构造函数。如果obj是列表或元组,则如果第一个对象是ndarray
,则调用fromarrays
,否则调用fromrecords
。如果obj是 arecarray
,则在记录中复制数据(如果copy=True
)并使用新的格式、名称和标题。如果obj 是一个文件,则调用fromfile
.最后,如果 obj 是 anndarray
,则返回obj.view(recarray)
,复制数据 ifcopy=True
。例子
>>> a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
>>> np.core.records.array(a) rec.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]], dtype=int32)
>>> b = [(1, 1), (2, 4), (3, 9)] >>> c = np.core.records.array(b, formats = ['i2', 'f2'], names = ('x', 'y')) >>> c rec.array([(1, 1.0), (2, 4.0), (3, 9.0)], dtype=[('x', '<i2'), ('y', '<f2')])
>>> c.x rec.array([1, 2, 3], dtype=int16)
>>> c.y rec.array([ 1.0, 4.0, 9.0], dtype=float16)
>>> r = np.rec.array(['abc','def'], names=['col1','col2']) >>> print(r.col1) abc
>>> r.col1 array('abc', dtype='<U3')
>>> r.col2 array('def', dtype='<U3')