NumPy -Datentypen


Datentypen in Python

Standardmäßig hat Python diese Datentypen:

  • strings- Wird zur Darstellung von Textdaten verwendet, der Text wird unter Anführungszeichen angegeben. zB "ABCD"
  • integer- Wird verwendet, um ganze Zahlen darzustellen. zB -1, -2, -3
  • float- Wird verwendet, um reelle Zahlen darzustellen. zB 1,2, 42,42
  • boolean- Wird verwendet, um True oder False darzustellen.
  • complex- Wird verwendet, um komplexe Zahlen darzustellen. zB 1,0 + 2,0j, 1,5 + 2,5j

Datentypen in NumPy

NumPy hat einige zusätzliche Datentypen und bezieht sich auf Datentypen mit einem Zeichen, wie ifür ganze Zahlen, ufür vorzeichenlose ganze Zahlen usw.

Nachfolgend finden Sie eine Liste aller Datentypen in NumPy und die Zeichen, die zu ihrer Darstellung verwendet werden.

  • i- Ganzzahl
  • b- boolesch
  • u- Ganzzahl ohne Vorzeichen
  • f- schweben
  • c- komplexer Schwimmer
  • m- Zeitdelta
  • M- Terminzeit
  • O- Objekt
  • S- Schnur
  • U - Unicode-String
  • V - Fester Speicherplatz für andere Typen (void)

Überprüfen des Datentyps eines Arrays

Das NumPy-Array-Objekt hat eine aufgerufene Eigenschaft dtype , die den Datentyp des Arrays zurückgibt:

Beispiel

Holen Sie sich den Datentyp eines Array-Objekts:

import numpy as np

arr = np.array([1, 2, 3, 4])

print(arr.dtype)

Beispiel

Rufen Sie den Datentyp eines Arrays ab, das Strings enthält:

import numpy as np

arr = np.array(['apple', 'banana', 'cherry'])

print(arr.dtype)


Erstellen von Arrays mit einem definierten Datentyp

Wir verwenden die array()Funktion, um Arrays zu erstellen, diese Funktion kann ein optionales Argument annehmen: Damit dtype können wir den erwarteten Datentyp der Array-Elemente definieren:

Beispiel

Erstellen Sie ein Array mit dem Datentyp string:

import numpy as np

arr = np.array([1, 2, 3, 4], dtype='S')

print(arr)
print(arr.dtype)

Für i, u, f, Sund Ukönnen wir auch Größe definieren.

Beispiel

Erstellen Sie ein Array mit dem Datentyp 4 Bytes Integer:

import numpy as np

arr = np.array([1, 2, 3, 4], dtype='i4')

print(arr)
print(arr.dtype)

Was ist, wenn ein Wert nicht umgerechnet werden kann?

Wenn ein Typ angegeben wird, in dem Elemente nicht gecastet werden können, löst NumPy einen ValueError aus.

ValueError: In Python wird ValueError ausgelöst, wenn der Typ des übergebenen Arguments an eine Funktion unerwartet/falsch ist.

Beispiel

Eine nicht ganzzahlige Zeichenfolge wie 'a' kann nicht in eine Ganzzahl konvertiert werden (wird einen Fehler auslösen):

import numpy as np

arr = np.array(['a', '2', '3'], dtype='i')

Konvertieren des Datentyps in vorhandenen Arrays

Der beste Weg, den Datentyp eines bestehenden Arrays zu ändern, besteht darin, mit der astype()Methode eine Kopie des Arrays zu erstellen.

Die astype()Funktion erstellt eine Kopie des Arrays und ermöglicht es Ihnen, den Datentyp als Parameter anzugeben.

Der Datentyp kann mit einem String angegeben werden, wie 'f'für Float, 'i'für Integer usw., oder Sie können den Datentyp direkt verwenden, wie floatfür Float und intfür Integer.

Beispiel

Ändern Sie den Datentyp von Float in Integer, indem Sie 'i'als Parameterwert verwenden:

import numpy as np

arr = np.array([1.1, 2.1, 3.1])

newarr = arr.astype('i')

print(newarr)
print(newarr.dtype)

Beispiel

Ändern Sie den Datentyp von Float in Integer, indem Sie intals Parameterwert verwenden:

import numpy as np

arr = np.array([1.1, 2.1, 3.1])

newarr = arr.astype(int)

print(newarr)
print(newarr.dtype)

Beispiel

Datentyp von Integer auf Boolean ändern:

import numpy as np

arr = np.array([1, 0, 3])

newarr = arr.astype(bool)

print(newarr)
print(newarr.dtype)

Testen Sie sich mit Übungen

Übung:

NumPy verwendet ein Zeichen, um jeden der folgenden Datentypen darzustellen, welcher?

i = integer
 = boolean
 = unsigned integer
 = float
 = complex float
 = timedelta
 = datatime
 = object
 = string