當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。