当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python numpy records.array用法及代码示例


本文简要介绍 python 语言中 numpy.core.records.array 的用法。

用法:

core.records.array(obj, dtype=None, shape=None, offset=0, strides=None, formats=None, names=None, titles=None, aligned=False, byteorder=None, copy=True)

从wide-variety 个对象构造一个记录数组。

通用记录数组构造函数,根据输入分派到适当的 recarray 创建函数(请参阅注释)。

参数

obj 任何

输入对象。有关如何处理各种输入类型的详细信息,请参阅注释。

dtype 数据类型,可选

数组的有效 dtype。

shape int 或整数元组,可选

每个数组的形状。

offset 整数,可选

开始读取的文件或缓冲区中的位置。

strides 整数元组,可选

缓冲区(buf)根据这些步幅进行解释(步幅定义了每个数组元素、行、列等在内存中占用的字节数)。

formats, names, titles, aligned, byteorder :

如果 dtype None ,则这些参数将传递给 numpy.format_parser 以构造数据类型。有关详细文档,请参阅该函数。

copy 布尔型,可选

是复制输入对象 (True),还是使用引用。此选项仅在输入为 ndarray 或 recarray 时适用。默认为真。

返回

np.recarray

从指定对象创建的记录数组。

注意

如果对象None,然后调用numpy.recarray构造函数。如果对象是一个字符串,然后调用numpy.fromstring构造函数。如果对象是一个列表或一个元组,那么如果第一个对象是numpy.ndarray, 称呼numpy.core.records.fromarrays, 否则调用numpy.core.records.fromrecords.如果对象是一个numpy.recarray,然后复制recarray中的数据(如果copy=True) 并使用新的格式、名称和标题。如果对象是一个文件,然后调用numpy.fromfile.最后,如果 obj 是numpy.ndarray,然后返回obj.view(recarray), 复制数据如果copy=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')

相关用法


注:本文由纯净天空筛选整理自numpy.org大神的英文原创作品 numpy.core.records.array。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。