Numpy —— 資料型別物件 (dtype)
阿新 • • 發佈:2018-12-31
屬性dtype
In [49]: arr=np.arange(5)
In [50]: arr
Out[50]: array([0, 1, 2, 3, 4])
In [51]: arr.dtype
Out[51]: dtype('int32')
函式dtype( )
作用:結構化陣列型別並加以使用
語法:numpy.dtype(object, align, copy)
引數 | 含義 |
---|---|
Object | 被轉換為資料型別的物件。 |
Align | 如果為true,則向欄位新增間隔,使其類似 C 的結構體。 |
Copy | 是否生成dtype物件的新副本,如果為flase,結果是內建資料型別物件的引用。 |
In [53]: np.dtype(np.int32)
Out[53]: dtype('int32')
結構化資料型別
In [54]: student = np.dtype([('name','S20'), ('age', 'i1'), ('marks', 'f4')])
In [55]: print student
[('name', 'S20'), ('age', 'i1'), ('marks', '<f4')]
將其應用於 ndarray 物件
In [56]: a = np.array([('abc', 21, 50),('xyz', 18 , 75)], dtype = student)
In [57]: print a
[('abc', 21, 50.) ('xyz', 18, 75.)]
檔名稱可用於訪問 name,age,marks 列的內容
In [60]: print a['name']
['abc' 'xyz']
In [61]: print a['marks']
[ 50. 75.]
In [62]: print a['age']
[21 18]
astype( )函式
作用:轉換資料型別dtype
In [66]: arr=np.arange(5)
In [67]: arr.dtype
Out [67]: dtype('int32')
In [68]: float_arr=arr.astype(np.float64)
In [69]: float_arr.dtype
Out[69]: dtype('float64')
In [70]: float_arr
Out[70]: array([ 0., 1., 2., 3., 4.])