Types de données

30 min Niveau 1

Introduction

NumPy prend en charge une variété beaucoup plus grande de types numériques que Python. Le tableau suivant présente les différents types de données scalaires définis dans NumPy.

Types de données et description

  • bool_ - Booléen (vrai ou faux) stocké sous forme d'octet.
  • int_ - Type d'entier par défaut (identique au C long ; normalement soit int64 ou int32)
  • intc - Identique à int en C (normalement int32 ou int64)
  • intp - Nombre entier utilisé pour l'indexation (identique à ssize_t en C ; normalement int32 ou int64)
  • int8 - Octet (-128 à 127)
  • int16 - Entier (-32768 à 32767)
  • int32 - Entier (-2147483648 à 2147483647)
  • int64 - Entier (-9223372036854775808 à 9223372036854775807)
  • uint8 - Nombre entier non signé (0 à 255)
  • uint16 - Nombre entier non signé (0 à 65535)
  • uint32 - Nombre entier non signé (0 à 4294967295)
  • uint64 - Nombre entier non signé (0 à 18446744073709551615)
  • float_ - Abréviation de float64
  • float16 - Flottant de demi-précision : bit de signe, exposant de 5 bits, mantisse de 10 bits.
  • float32 - Flottant de précision simple : bit de signe, exposant de 8 bits, mantisse de 23 bits.
  • float64 - Flottant à double précision : bit de signe, exposant de 11 bits, mantisse de 52 bits.
  • complex_ - Abréviation de complexe128
  • complex64 - Nombre complexe, représenté par deux flottants de 32 bits (composantes réelles et imaginaires).
  • complex128 - Nombre complexe, représenté par deux flottants de 64 bits (composantes réelles et imaginaires).

Les types numériques de NumPy sont des instances d'objets dtype (data-type), chacun ayant des caractéristiques uniques. Les dtypes sont disponibles en tant que np.bool_, np.float32, etc.

Objets de type de données (dtype)

Un objet de type de données décrit l'interprétation d'un bloc fixe de mémoire correspondant à un tableau, en fonction des aspects suivants : - le type d'objet est un objet de type de données.

  • Type de données (entier, flottant ou objet Python)
  • Taille des données
  • Ordre des octets (little-endian ou big-endian)
  • Dans le cas d'un type structuré, les noms des champs, le type de données de chaque champ et la partie du bloc de mémoire occupée par chaque champ.
  • Si le type de données est un sous-réseau, sa forme et son type de données

L'ordre des octets est déterminé par la préfixation de "<" ou ">" au type de données. <' signifie que le codage est little-endian (l'octet le moins significatif est stocké à la plus petite adresse). >' signifie que le codage est big-endian (l'octet le plus significatif est stocké à l'adresse la plus petite).

Un objet dtype est construit à l'aide de la syntaxe suivante -

numpy.dtype(object, align, copy)

Les paramètres sont -

  • Object − A convertir en objet de type de données
  • Align − Si vrai, ajoute du remplissage au champ pour le rendre similaire à une structure C.
  • Copy − Crée une nouvelle copie de l'objet dtype. Si false, le résultat est une référence à l'objet de type de données intégré.

Exemple 1

# using array-scalar type 
import numpy as np 
dt = np.dtype(np.int32) 
print dt

Le résultat est le suivant -

int32
logo discord

Besoin d'aide ?

Rejoignez notre communauté officielle et ne restez plus seul à bloquer sur un problème !

En savoir plus