AD

Creare array riempito con valore specificato con NumPy

Il modulo NumPy può essere utilizzato per creare un array riempito con un valore specifico. Questa operazione è utile in molte situazioni, come l'inizializzazione di parametri in algoritmi di machine learning, la creazione di matrici per test, e molto altro.

In questa guida, esploreremo come utilizzare la funzione numpy.full() per creare un array riempito con un valore specificato.

La funzione full di Numpy

La funzione full è la scelta ideale quando si desidera creare un array con un valore ripetuto. Essa consente di specificare la forma dell'array, il valore con cui riempirlo e altri parametri opzionali che influenzano il comportamento dell'array. La sintassi di base della funzione è la seguente:

import numpy as np # Creare un array riempito con un valore specifico array = np.full(shape, fill_value, dtype=None, order='C')

I parametri principali sono:

  • shape: questo parametro è obbligatorio e definisce la forma dell'array. Può essere un singolo intero per un array monodimensionale o una tupla per array multidimensionali.

  • fill_value: anche questo parametro è obbligatorio e specifica il valore con cui riempire l'intero array.

  • dtype (opzionale): specifica il tipo di dato degli elementi dell'array. Se non viene specificato, NumPy tenta di dedurre il tipo di dato da fill_value.

  • order (opzionale): definisce l'ordine di memorizzazione degli elementi nell'array. C indica l'ordine row-major (stile C), mentre F indica l'ordine column-major (stile Fortran). Il valore predefinito è C.

Esempio di utilizzo della funzione full di NumPy

Un array monodimensionale è un vettore semplice, e creare un array riempito con un valore specifico è molto semplice. Supponiamo di voler creare un array di cinque elementi, tutti con valore 7:

import numpy as np array_mono = np.full(5, 7) print(array_mono)  # Output: [7 7 7 7 7]

Per creare un array multidimensionale, come una matrice, possiamo passare una tupla al parametro shape. Ad esempio, per creare una matrice 3x3 riempita con il valore 3.14:

import numpy as np array_multi = np.full((3, 3), 3.14) print(array_multi)

NumPy offre altre funzioni per creare array predefiniti, come numpy.zeros() e numpy.ones(). Mentre numpy.zeros() crea un array riempito di zeri e numpy.ones() un array riempito di uni, numpy.full() è più flessibile perché permette di specificare qualsiasi valore per riempire l'array.