Introduction aux types de données NumPy
Un type de données est un attribut associé aux données qui définit le type de valeurs que les données peuvent contenir, le type d'opérations qui peuvent y être effectuées et, surtout, la quantité d'espace mémoire nécessaire. Certains des types de données très courants sont entier, réel, booléen et char. Dans cet article, nous tenterons de comprendre les différents types de données pris en charge par Numpy. Numpy est un package python utilisé pour le calcul scientifique. Il est purement écrit dans le langage de programmation C. Par conséquent, nous pouvons supposer que les types de données dans Numpy sont plus ou moins une mise à niveau des types de données C.
Types de données Numpy
Les différents types de données pris en charge par numpy sont:
Type de données Numpy | Type de données C étroitement associé | Taille de stockage | La description |
np.bool_ | bool | 1 octet | peut contenir des valeurs booléennes, comme (True ou False) ou (0 ou 1) |
np.byte | char signé | 1 octet | peut contenir des valeurs de 0 à 255 |
np.ubyte | caractère non signé | 1 octet | peut contenir des valeurs de -128 à 127 |
np.short | signé court | 2 octets | peut contenir des valeurs de -32 768 à 32 767 |
np.ushort | court non signé | 2 octets | peut contenir des valeurs de 0 à 65 535 |
np.uintc | entier non signé | 2 ou 4 octets | peut contenir des valeurs de 0 à 65 535 ou 0 à 4 294 967 295 |
np.int_ | longue | 8 octets | peut contenir des valeurs de -9223372036854775808 à 9223372036854775807 |
np.uint | non signé long | 8 octets | 0 à 18446744073709551615 |
np.longlong | long long | 8 octets | peut contenir des valeurs de -9223372036854775808 à 9223372036854775807 |
np.ulonglong | non signé long long | 8 octets | 0 à 18446744073709551615 |
np.half / np.float16 | - | permet une précision de demi-flotteur avec Format: bit de signe, exposant de 5 bits, mantisse de 10 bits |
|
np.single | flotte | 4 octets | permet une précision à flotteur unique Format: bit de signe, exposant de 8 bits, mantisse de 23 bits |
np.double | double | 8 octets | permet une précision à double flotteur Format: bit de signe, exposant de 11 bits, mantisse de 52 bits. |
np.longdouble | long double | 8 octets | extension du flotteur |
np.csingle | complexe flottant | 8 octets | peut être complexe avec des parties réelles et imaginaires jusqu'à flotteur simple précision |
np.cdouble | double complexe | 16 octets | peut être complexe avec des parties réelles et imaginaires jusqu'à flotteur double précision |
np.clongdouble | long double complexe | 16 octets | extension du flotteur pour un nombre complexe |
np.int8 | int8_t | 1 octet | peut contenir des valeurs de -128 à 127 |
np.int16 | int16_t | 2 octets | peut contenir des valeurs de -32 768 à 32 767 |
np.int32 | int32_t | 4 octets | peut contenir des valeurs comprises entre -2 147 483 648 et 2 147 483 647 |
np.int64 | int64_t | 8 octets | peut contenir des valeurs de -9223372036854775808 à 9223372036854775807 |
np.uint8 | uint8_t | 1 octet | peut contenir des valeurs de 0 à 255 |
np.uint16 | uint16_t | 2 octets | peut contenir des valeurs de 0 à 65 535 |
np.uint32 | uint32_t | 4 octets | peut contenir des valeurs de 0 à 4 294 967 295 |
np.uint64 | uint64_t | 8 octets | peut contenir des valeurs de 0 à 18446744073709551615 |
np.intp | intptr_t | 4 octets | un entier signé utilisé pour l'indexation |
np.uintp | uintptr_t | 4 octets | un entier non signé utilisé pour contenir un pointeur |
np.float32 | flotte | 4 octets | précision à flotteur unique |
np.float64 | double | 8 octets | précision à double flotteur |
np.complex64 | complexe flottant | 8 octets | précision à flotteur unique en nombres complexes |
np.complex128 | double complexe | 16 octets | précision à double flotteur en nombres complexes |
Exemples de types de données NumPy
Maintenant, comprenons comment un type de données numpy particulier est utilisé.
Exemple 1
Création d'un objet de type de données
dt = np.dtype(np.int8)
Production:
Exemple # 2
Recherche de la taille d'un type de données
dt = np.dtype(np.int8)
name = dt.name
sizeoftype = dt.itemsize
print('name:', name, 'size:', sizeoftype)
Production:
Exemple # 3
Création d'un objet de type de données à l'aide de symboles uniques pour chaque type de données
Chaque type de données dans numpy a un code de caractère associé qui l'identifie de manière unique.
dt = np.dtype('i4')
Production:
Exemple # 4
Utilisation de types de données pour créer un tableau structuré
employee_info = np.dtype((('name', 'S10'), ('age', 'i1'), ('salary', 'f4'), ('rating', 'f4')))
print(employee_info)
Production:
a = np.array((('Karthik', 31, 20000, 3.84), ('Rita', 25, 25123.34, 4.41)), dtype = employee_info)
print (a)
Production:
Conclusion
Les types de données Numpy sont plus ou moins similaires aux types de données C. Ils peuvent être grossièrement classés en bool, octet, int, float, double et complexe. Il est indispensable pour les bons programmeurs de comprendre comment les données sont stockées et manipulées. Cela peut être réalisé en comprenant efficacement les types de données.
Articles recommandés
Ceci est un guide des types de données NumPy. Ici, nous discutons comment un type de données numpy particulier est utilisé avec les exemples. Vous pouvez également consulter les articles suivants pour en savoir plus -
- Qu'est-ce que NumPy?
- Matplotlib en Python
- Types de données Python
- Dictionnaire en Python