1. 程式人生 > >Numpy函式-資料型別轉換astype,dtype

Numpy函式-資料型別轉換astype,dtype

1、檢視資料型別

In [11]: arr = np.array([1,2,3,4,5])

In [12]: arr
Out[12]: array([1, 2, 3, 4, 5])

// 該命令檢視資料型別
In [13]: arr.dtype
Out[13]: dtype('int64')

In [14]: float_arr = arr.astype(np.float64)

// 該命令檢視資料型別
In [15]: float_arr.dtype
Out[15]: dtype('float64')

2、轉換資料型別

// 如果將浮點數轉換為整數,則小數部分會被截斷
In [7]: arr2 = np.array
([1.1, 2.2, 3.3, 4.4, 5.3221]) In [8]: arr2 Out[8]: array([ 1.1 , 2.2 , 3.3 , 4.4 , 5.3221]) // 檢視當前資料型別 In [9]: arr2.dtype Out[9]: dtype('float64') // 轉換資料型別 float -> int In [10]: arr2.astype(np.int32) Out[10]: array([1, 2, 3, 4, 5], dtype=int32)

3、字串陣列轉換為數值型

In [4]: numeric_strings = np.array
(['1.2','2.3','3.2141'], dtype=np.string_) In [5]: numeric_strings Out[5]: array(['1.2', '2.3', '3.2141'], dtype='|S6') // 此處寫的是float 而不是np.float64, Numpy很聰明,會將python型別對映到等價的dtype上 In [6]: numeric_strings.astype(float) Out[6]: array([ 1.2, 2.3, 3.2141])