La funzione linspace() di Numpy

Il metodo linspace() del modulo numpy mi permette di definire un array composto da una serie di N elementi numerici equidistribuiti tra due estremi.

linspace(start, stop, n)

  • Negli argomenti start e stop indico gli estremi.
  • Nell'argomento n indico il numero degli elementi dell'array.

La funzione linspace() crea un vettore con n elementi equamente distribuiti tra il primo e l'ultimo della serie.

Nota. L'intervallo tra un elemento e il suo successore è una costante. E' sempre lo stesso. E' calcolato automaticamente dall'interprete tenendo conto della differenza tra l'elemento finale e iniziale e della cardinalità dell'insieme.

    Un esempio pratico

    Esempio 1

    Voglio creare un array composto dai percentili 0, 0.25, 0.5, 0.75, 1.

    Posso farlo rapidamente con la funzione linspace()

    >>> np.linspace(0,1,5)
    array([0. , 0.25, 0.5 , 0.75, 1. ])

    Esempio 2

    Per creare un vettore con 5 elementi distribuiti tra 0 e 100.

    >>> np.linspace(0,100,5)
    array([ 0., 25., 50., 75., 100.])

    Esempio 3 ( matrice )

    Per creare una serie numerica in una matrice a due dimensioni, definisco un vettore con n elementi con la funzione linspace().

    Poi trasformo il vettore in una matrice a due dimensioni tramite la funzione reshape().

    >>> y=np.linspace(0,100,6)
    >>> np.reshape(y,[2,3])
    array([[ 0., 20., 40.],
    [ 60., 80., 100.]])

    In questo modo posso creare qualsiasi sequenza numerica in un oggetto di tipo array senza doverla digitare manualmente.

    E così via.

    Attenzione. Quando si trasforma un vettore in una matrice il numero (n) degli elementi del vettore deve essere uguale al prodotto delle righe (r) per le colonne (c) della matrice. In pratica, n=rc.

     


     

    Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

    FacebookTwitterLinkedinLinkedin
    knowledge base

    Numpy

    I metodi e le funzioni