Funzione fromfunction() di numpy
La funzione fromfunction() della libreria numpy di Python mi permette di creare un array di dimensioni N e inserire il valore degli elementi tramite una funzione.
fromfunction(fun, dim)
Dove gli argomenti hanno questo significato
- fun è la funzione da usare per generare i valori nell'array
- dim è una tupla che indica la dimensione dell'array (es. numero di righe e colonne della matrice)
Nota. Per definire il tipo di dato (es. int, float, ecc.) dell'array basta aggiungere il parametro dtype.
Un esempio pratico
Genero una matrice con tre righe e tre colonne, usando una funzione che somma il numero della riga e della colonna.
np.fromfunction(lambda i, j: i + j, (3, 3), dtype=int)
Il primo parametro è una funzione lambda (funzione anonima) che usa due parametri in ingresso (i,j) e restituisce la somma come valore in uscita i+j.
Il secondo parametro indica la dimensione (3,3) della matrice ossia 3 righe e 3 colonne.
Il terzo parametro impone il tipo di dato dtype=int (intero) ai valori della matrice.
Il risultato in output è il seguente
array([[0, 1, 2],
[1, 2, 3],
[2, 3, 4]])
E così via.