Introduzione ai tipi di dati NumPy
Un tipo di dati è un attributo associato ai dati che definisce il tipo di valori che i dati possono contenere, il tipo di operazioni che possono essere eseguite su di esso e, soprattutto, la quantità di spazio di memoria richiesto da esso. Alcuni dei tipi di dati molto comuni sono integer, real, boolean e char. In questo articolo, faremo un tentativo di comprendere vari tipi di dati supportati da Numpy. Numpy è un pacchetto Python utilizzato per il calcolo scientifico. È puramente scritto nel linguaggio di programmazione C. Quindi, possiamo presumere che i tipi di dati in Numpy siano più o meno un aggiornamento dei tipi di dati C.
Tipi di dati Numpy
I vari tipi di dati supportati da numpy sono:
Tipo di dati Numpy | Tipo di dati C strettamente associato | Dimensione di archiviazione | Descrizione |
np.bool_ | bool | 1 byte | può contenere valori booleani, come (Vero o Falso) o (0 o 1) |
np.byte | char firmato | 1 byte | può contenere valori compresi tra 0 e 255 |
np.ubyte | carattere non firmato | 1 byte | può contenere valori compresi tra -128 e 127 |
np.short | corto firmato | 2 byte | può contenere valori compresi tra -32.768 e 32.767 |
np.ushort | corto firmato | 2 byte | può contenere valori compresi tra 0 e 65.535 |
np.uintc | int | 2 o 4 byte | può contenere valori compresi tra 0 e 65.535 o tra 0 e 4.294.967.295 |
np.int_ | lungo | 8 byte | può contenere valori compresi tra -9223372036854775808 e 9223372036854775807 |
np.uint | non firmato a lungo | 8 byte | Da 0 a 18446744073709551615 |
np.longlong | lungo lungo | 8 byte | può contenere valori compresi tra -9223372036854775808 e 9223372036854775807 |
np.ulonglong | unsigned long long | 8 byte | Da 0 a 18446744073709551615 |
np.half / np.float16 | - | consente la precisione del mezzo galleggiante con Formato: bit di segno, esponente di 5 bit, mantissa di 10 bit |
|
np.single | galleggiante | 4 byte | consente precisione a galleggiante singolo Formato: bit di segno, esponente di 8 bit, mantissa di 23 bit |
np.double | Doppio | 8 byte | consente una precisione a doppio galleggiante Formato: bit di segno, esponente di 11 bit, mantissa di 52 bit. |
np.longdouble | doppio lungo | 8 byte | estensione del galleggiante |
np.csingle | complesso galleggiante | 8 byte | può contenere complessi con parti reali e immaginarie fino a galleggiante a precisione singola |
np.cdouble | doppio complesso | 16 byte | può contenere complessi con parti reali e immaginarie fino a galleggiante a doppia precisione |
np.clongdouble | lungo doppio complesso | 16 byte | estensione del float per numero complesso |
np.int8 | int8_t | 1 byte | può contenere valori compresi tra -128 e 127 |
np.int16 | int16_t | 2 byte | può contenere valori compresi tra -32.768 e 32.767 |
np.int32 | int32_t | 4 byte | può contenere valori compresi tra -2.147.483.648 e 2.147.483.647 |
np.int64 | int64_t | 8 byte | può contenere valori compresi tra -9223372036854775808 e 9223372036854775807 |
np.uint8 | uint8_t | 1 byte | può contenere valori compresi tra 0 e 255 |
np.uint16 | uint16_t | 2 byte | può contenere valori compresi tra 0 e 65.535 |
np.uint32 | uint32_t | 4 byte | può contenere valori compresi tra 0 e 4.294.967.295 |
np.uint64 | uint64_t | 8 byte | può contenere valori compresi tra 0 e 18446744073709551615 |
np.intp | intptr_t | 4 byte | un numero intero con segno utilizzato per l'indicizzazione |
np.uintp | uintptr_t | 4 byte | un numero intero senza segno utilizzato per contenere un puntatore |
np.float32 | galleggiante | 4 byte | precisione a galleggiante singolo |
np.float64 | Doppio | 8 byte | precisione a doppio galleggiante |
np.complex64 | complesso galleggiante | 8 byte | precisione a galleggiante singolo in numeri complessi |
np.complex128 | doppio complesso | 16 byte | precisione a doppio galleggiante in numeri complessi |
Esempi di tipi di dati NumPy
Ora, capiamo come viene utilizzato un particolare tipo di dati intorpidito.
Esempio 1
Creazione di un oggetto tipo di dati
dt = np.dtype(np.int8)
Produzione:
Esempio n. 2
Trovare la dimensione di un tipo di dati
dt = np.dtype(np.int8)
name = dt.name
sizeoftype = dt.itemsize
print('name:', name, 'size:', sizeoftype)
Produzione:
Esempio n. 3
Creazione di un oggetto tipo di dati utilizzando simboli univoci per ciascun tipo di dati
Ogni tipo di dati in numpy ha un codice carattere associato che lo identifica in modo univoco.
dt = np.dtype('i4')
Produzione:
Esempio n. 4
Utilizzo dei tipi di dati per creare un array strutturato
employee_info = np.dtype((('name', 'S10'), ('age', 'i1'), ('salary', 'f4'), ('rating', 'f4')))
print(employee_info)
Produzione:
a = np.array((('Karthik', 31, 20000, 3.84), ('Rita', 25, 25123.34, 4.41)), dtype = employee_info)
print (a)
Produzione:
Conclusione
I tipi di dati Numpy sono più o meno simili ai tipi di dati C. Possono essere approssimativamente classificati in bool, byte, int, float, double e complex. È indispensabile per i bravi programmatori capire come vengono archiviati e manipolati i dati. Ciò può essere ottenuto attraverso una comprensione efficace dei tipi di dati.
Articoli consigliati
Questa è una guida ai tipi di dati NumPy. Qui discutiamo di come viene usato un particolare tipo di dati intorpidito insieme agli esempi Puoi anche dare un'occhiata ai seguenti articoli per saperne di più -
- Che cos'è NumPy?
- Matplotlib In Python
- Tipi di dati Python
- Dizionario in Python