numpy.ma.MaskedArray.astype#

方法

ma.MaskedArray.astype(dtype, order='K', casting='unsafe', subok=True, copy=True)#

陣列的副本,轉換為指定的型別。

參數:
dtypestr 或 dtype

型別代碼或資料型別,陣列將轉換為此型別。

order{‘C’, ‘F’, ‘A’, ‘K’}, 選項性

控制結果的記憶體佈局順序。‘C’ 表示 C 順序,‘F’ 表示 Fortran 順序,‘A’ 表示如果所有陣列都是 Fortran 連續的則為 ‘F’ 順序,否則為 ‘C’ 順序,而 ‘K’ 表示盡可能接近陣列元素在記憶體中出現的順序。預設值為 ‘K’。

casting{‘no’, ‘equiv’, ‘safe’, ‘same_kind’, ‘unsafe’}, 選項性

控制可能發生的資料型別轉換種類。為了向後相容性,預設值為 ‘unsafe’。

  • ‘no’ 表示完全不應轉換資料型別。

  • ‘equiv’ 表示僅允許位元組順序變更。

  • ‘safe’ 表示僅允許可以保留值的轉換。

  • ‘same_kind’ 表示僅允許安全轉換或同一種類內的轉換,例如 float64 到 float32。

  • ‘unsafe’ 表示可以進行任何資料轉換。

subokbool, 選項性

如果為 True,則子類別將被傳遞(預設值),否則返回的陣列將強制為基底類別陣列。

copybool, 選項性

預設情況下,astype 總是返回一個新分配的陣列。如果設定為 false,並且滿足 dtypeordersubok 要求,則會返回輸入陣列而不是副本。

傳回值:
arr_tndarray

除非 copy 為 False 且滿足返回輸入陣列的其他條件(請參閱 copy 輸入參數的描述),否則 arr_t 是一個與輸入陣列形狀相同的新陣列,其 dtype 和 order 由 dtypeorder 給定。

引發:
ComplexWarning

當從複數轉換為浮點數或整數時。為了避免這種情況,應使用 a.real.astype(t)

範例

>>> import numpy as np
>>> x = np.array([1, 2, 2.5])
>>> x
array([1. ,  2. ,  2.5])
>>> x.astype(int)
array([1, 2, 2])