dtype
¶
Der ndarray
ist ein Container für homogene Daten, d.h. alle Elemente müssen vom gleichen Typ sein. Jedes Array hat einen dtype
, ein Objekt, das den Datentyp des Arrays beschreibt:
[8]:
dt = data.dtype
dt
[8]:
dtype('float64')
NumPy-Datentypen:
Typ |
Typ-Code |
Beschreibung |
---|---|---|
|
|
Vorzeichenbehaftete und vorzeichenlose 8-Bit (1 Byte) Ganzzahltypen |
|
|
Vorzeichenbehaftete und vorzeichenlose 16-Bit (2 Byte) Ganzzahltypen |
|
|
Vorzeichenbehaftete und vorzeichenlose 32-Bit (4 Byte) Ganzzahltypen |
|
|
Vorzeichenbehaftete und vorzeichenlose 64-Bit (8 Byte) Ganzzahltypen |
|
|
Standard-Gleitkomma mit halber Genauigkeit |
|
|
Standard-Gleitkomma mit einfacher Genauigkeit; kompatibel mit C |
|
|
Standard-Gleitkomma mit doppelter Genauigkeit; kompatibel mit C |
|
|
Komplexe Zahlen, die durch zwei 32-, 64- bzw. 128-Gleitkommazahlen dargestellt werden |
|
|
Boolescher Typ, der die Werte |
|
|
Python-Objekttyp; ein Wert kann ein beliebiges Python-Objekt sein |
|
|
ASCII-Stringtyp mit fester Länge (1 Byte pro Zeichen); um z.B. einen Stringtyp mit der Länge 7 zu erstellen, verwendet |
|
|
Unicode-Typ mit fester Länge wobei die Anzahl der Bytes plattformspezifisch ist; verwendet dieselbe Spezifikationssemantik wie |
Anzahl der Elemente mit itemsize
ermitteln:
[9]:
dt.itemsize
[9]:
8
Name des Datentypes ermitteln:
[10]:
dt.name
[10]:
'float64'
Datentyp überprüfen:
[11]:
dt.type is np.float64
[11]:
True
Datentyp ändern mit astype
:
[12]:
data_float32 = data.astype(np.float32)
data_float32
[12]:
array([[ 0.33215025, 0.9821482 , 0.14965022],
[-0.5039629 , 0.79987854, -0.55183125],
[-0.9200971 , -0.746871 , 0.37547055],
[-1.1687789 , 1.6087633 , -1.6145438 ],
[ 0.14729111, 0.4293929 , -0.11391696],
[-0.9159697 , -0.6969758 , -0.36380735],
[-0.34818023, -0.9103621 , -0.47645596]], dtype=float32)