Tipi di dati NumPy
- Pagina Precedente Taglio dell'array NumPy
- Pagina Successiva Copia/Visualizzazione NumPy
I tipi dati in Python
Per impostazione predefinita, Python ha i seguenti tipi dati:
strings
- Utilizzati per rappresentare dati testuali, i testi sono racchiusi tra virgolette. Ad esempio "ABCD".integer
- Utilizzati per rappresentare interi. Ad esempio -1, -2, -3.float
- Utilizzati per rappresentare numeri reali. Ad esempio 1.2, 42.42.boolean
- Utilizzati per rappresentare True o False.complex
- Utilizzati per rappresentare numeri nel piano complesso. Ad esempio 1.0 + 2.0j, 1.5 + 2.5j.
I tipi dati in NumPy
NumPy ha alcuni tipi dati aggiuntivi, rappresentati da un carattere, ad esempio i
Rappresenta interi,u
Rappresenta interi senza segno e altro.
Ecco l'elenco di tutti i tipi dati in NumPy e i caratteri utilizzati per rappresentarli.
i
- Interob
- Booleanou
- Intero senza segnof
- Numero a virgola mobilec
- Numero complessom
- TimedeltaM
- DatetimeO
- OggettiS
- StringheU
- Stringhe unicodeV
- Blocco di memoria di tipo fisso per altri tipi (void)
Controllare il tipo dati dell'array
Un oggetto array NumPy ha un attributo chiamato dtype
L'attributo, che restituisce il tipo dati dell'array:
Esempio
Ottieni il tipo dati di un oggetto array:
import numpy as np arr = np.array([1, 2, 3, 4]) print(arr.dtype)
Esempio
Ottieni il tipo dati di un array contenente stringhe:
import numpy as np arr = np.array(['apple', 'banana', 'cherry']) print(arr.dtype)
Creare un array con un tipo dati definito
Usiamo array()
La funzione per creare array, che può utilizzare parametri opzionali:dtype
che ci permette di definire il tipo dati degli elementi dell'array:
Esempio
Creare un array con una stringa di tipo dati:
import numpy as np arr = np.array([1, 2, 3, 4], dtype='S') print(arr) print(arr.dtype)
Per i
、u
、f
、S
e U
Possiamo anche definire la dimensione.
Esempio
Creare un array di interi a 4 byte:
import numpy as np arr = np.array([1, 2, 3, 4], dtype='i4') print(arr) print(arr.dtype)
Cosa succede se il valore non può essere convertito?
Se il tipo dell'elemento non può essere convertito forzatamente, NumPy solleva un ValueError.
ValueError: In Python, se il tipo di dati del parametro passato alla funzione non è quello previsto o corretto, viene lanciato un ValueError.
Esempio
Impossibile convertire una stringa non numerica (ad esempio 'a') in intero ( verrà lanciato un errore):
import numpy as np arr = np.array(['a', '2', '3'], dtype='i')
Convertire il tipo di dati di un array esistente
Il miglior metodo per modificare il tipo di dati di un array esistente è utilizzare astype()
Il metodo copia l'array.
astype()
La funzione crea una copia dell'array e ti permette di specificare il tipo di dati come parametro.
Il tipo di dati può essere specificato come stringa, ad esempio 'f'
Rappresenta il numero decimale,'i'
Rappresenta l'intero ecc. O si può anche utilizzare il tipo di dati, ad esempio float
Rappresenta il numero decimale,int
Rappresenta l'intero.
Esempio
Utilizzando 'i'
Come valore di parametro, modificare il tipo di dati da numero a intero:
import numpy as np arr = np.array([1.1, 2.1, 3.1]) newarr = arr.astype('i') print(newarr) print(newarr.dtype)
Esempio
Utilizzando int
Come valore di parametro, modificare il tipo di dati da numero a intero:
import numpy as np arr = np.array([1.1, 2.1, 3.1]) newarr = arr.astype(int) print(newarr) print(newarr.dtype)
Esempio
Modificare il tipo di dati da intero a booleano:
import numpy as np arr = np.array([1, 0, 3]) newarr = arr.astype(bool) print(newarr) print(newarr.dtype)
- Pagina Precedente Taglio dell'array NumPy
- Pagina Successiva Copia/Visualizzazione NumPy