Tutorial Numpy - Tipo di dati e conversione NumPy

  1. Tipo di dati NumPy
  2. Conversione del tipo di dati

Il tipo di dati - dtype in NumPy è diverso dai tipi di dati primitivi in Python, per esempio, dtype ha il tipo con risoluzione più alta che è utile nel calcolo dei dati.

Tipo di dati NumPy

Tipo di dati Descrizione
bool Booleano
int8 8-bit firmato intero
int16 16-bit firmato intero
int32 intero firmato a 32 bit
int64 64-bit firmato intero
uint8 8-bit non firmato intero
uint16 16 bit non firmato intero
uint32 32-bit non firmato intero
uint64 64-bit non firmato intero
 float16  Numero in virgola mobile a 16 bit
 float32  Numero in virgola mobile a 32 bit
 float64  Numero a virgola mobile a 64 bit
 complex64  Numero complesso a 64 bit
 complex128  Numero complesso a 128 bit

Quando si crea un nuovo dato ndarray, si può definire il tipo di dati dell’elemento per stringa o per costanti di tipo di dati nella libreria numpy.

import numpy as np

# by string
test = np.array([4, 5, 6], dtype='int64')

# by data type constant in numpy
test = np.array([7, 8, 8], dtype=np.int64)

Conversione del tipo di dati

Dopo che l’istanza di dati è stata creata, si può cambiare il tipo dell’elemento con il metodo astype(), come ad esempio da intero a fluttuante e così via.

>>> import numpy as np
>>> test = np.array([11, 12, 13, 14], dtype="int32")
>>> x = test.astype('float32')
>>> x
array([11., 12., 13., 14.], dtype=float32)
>>> test, test.dtype
(array([11, 12, 13, 14]), dtype('int32'))
Attenzione

Il metodo di conversione del tipo di dati restituirà solo una nuova istanza dell’array, e i dati e le informazioni dell’istanza originale dell’array non sono cambiati.