Rango numpy

Rango numpy
Il rango della matrice è il numero di vettori di colonna linearmente indipendenti nella matrice o il numero massimo di vettori di riga linearmente. Supponiamo che abbiamo una matrice "RXC", il che significa che le righe e le colonne che il rango massimo che la matrice può ottenere è "R". Ma se "R" è maggiore di "C", il rango massimo che la matrice può ottenere è "c". È molto utile in più scenari. Ci dice quante soluzioni per qualsiasi tipo di calcolo per la matrice.

Possiamo dire che la riga o la colonna sono linearmente indipendenti quando la riga o la colonna non può essere ottenuta usando la combinazione lineare di esse.

io.e. [1, 2, 3], [2, 4, 6]

Nell'array dato, possiamo vedere che la seconda riga è il multiplo della prima riga per 2. Ma la prima riga non è il multiplo di qualsiasi altra riga della matrice, il che significa che il grado della matrice di riga è "1".

Sintassi:

numpy.linalg.matrix_rank (matrix, tol)

Il Linald.La funzione Matrix_rank () restituisce il grado della matrice usando la procedura SVD ed è calcolata da valori singolari maggiori di TOL. Al metodo di rango, passiamo due parametri: il primo è la matrice data di cui dobbiamo trovare il rango e il secondo parametro è tol.

Tol: È la soglia seguente in cui i valori di SVD sono assunti come null. Non è obbligatorio da aggiungere.

Esempio 1: linalg.Funzione matrix_rank () su array monodimensionale

In questo esempio, troviamo il grado dell'array monodimensionale. Procediamo al nostro primo passo in cui importa la nostra biblioteca numpy come NP. L'importazione è la parola chiave Python per includere i pacchetti forniti da Python. Import Numpy significa che stiamo importando i pacchetti di numpy. Successivamente, creiamo una variabile "ARR1" che è responsabile della tenuta dell'array che abbiamo creato usando NP.Metodo array () che ci consente di creare qualsiasi tipo di matrice, che si tratti di un array a una o n-dimensionale. L'array che creiamo contiene i valori "5", "4", "0", "1", "3" e "2".

Nella riga successiva, utilizziamo l'istruzione di stampa per visualizzare l'array inizializzato. Dopodiché, passiamo il NP.linalg.funzione Matrix_rank () che contiene due parametri. Il primo è l'array dato e il secondo è il TOL, la funzione che consente al compilatore di calcolare il grado della matrice usando il metodo SVD.

Analizziamo ora cosa accadrebbe se generiamo un array con valori nulli. Per eseguire questo, creiamo una variabile denominata "ARR2" a cui assegniamo il NP.funzione array in cui passiamo un'altra funzione che è "NP.zero "con il parametro" 2 ". Il NP.La funzione zero viene utilizzata per passare i valori zero o null all'array. Ciò significa che l'array è responsabile della detenzione dei valori "0" e dei valori che vengono passati a NP.zero () è la dimensione dell'array. In questo caso, è "2".

Nella riga successiva, utilizziamo l'istruzione di stampa per visualizzare l'array che abbiamo inizializzato con i valori null. Quindi, applica il metodo Rank () sull'array per controllare il grado di quell'array.

Importa Numpy come NP
arr1 = np.Array ([5, 4, 0, 1, 3, 2])
print ("La matrice è:", arr1)
print ("matrice del primo array è:", NP.linalg.matrix_rank (arr1, 0))
arr2 = np.Array (NP.ZEROS (2))
stampa ("La matrice è:", arr2)
print ("matrice del 2 ° array è:", NP.linalg.matrix_rank (arr2, 0))

Come mostrato nella seguente screenshot, viene visualizzato l'output del codice precedente in cui la prima matrice è l'array unidimensionale di dimensioni "6". Nella riga successiva, viene visualizzato il valore "1", il che significa che il grado dell'array è "1".

Nel seguente output, possiamo vedere che abbiamo un array di dimensioni due che contiene valori nulli. Nella riga successiva, visualizziamo il grado calcolato dell'array che è zero. Ciò significa che entrambe le colonne dipendono l'una dall'altra.

Esempio 2: linalg.Funzione matrix_rank () su array bidimensionale

In questo caso, eseguiamo il calcolo del rango sull'array bidimensionale. Dopo aver incluso la libreria Numpy, creiamo una variabile che contiene la matrice. In questo esempio, usiamo il numpy.Metodo Matrix () per creare un array. Il NP.Il metodo Matrix () ci consente di creare qualsiasi tipo di matrice su una matrice n-dimensionale. In questo esempio, creiamo un array bidimensionale con i valori "8", "1", "7", "5", "2" e "6". Quindi, visualizziamo il nostro array originale utilizzando l'istruzione di stampa. Nella riga di codice successiva, dichiariamo il nome della variabile "rango" che contiene il valore di restituzione del metodo di rango () dell'array dato. Alla fine del codice, visualizziamo semplicemente il grado del codice.

importa numpy
array = numpy.Matrix ([[8,1,7], [5,2,6]])
Stampa ("Matrix originale è:", Array)
Rank = Numpy.linalg.matrix_rank (array)
Print ("Rank of a Matrix is:", Rank)

Muovendosi verso il nostro output del codice indicato nel seguente, possiamo identificare la matrice che è una matrice 3 × 2. Nella prossima esecuzione, viene visualizzato il grado dell'array che è "2".

Esempio 3: Linalg.Funzione matrix_rank () su array tridimensionale

In questo esempio, eseguiamo il metodo di rango sull'array tridimensionale. Per eseguire questo, includiamo innanzitutto i nostri pacchetti numpy forniti da Python come NP. E poi, creiamo un array di dimensioni 3 × 3 con i valori "8", "1", "7", "4", "3", "9", "5", "2" e "6 ". Successivamente, passiamo l'array inizializzato all'istruzione di stampa. Dopo aver visualizzato l'array iniziale, dichiariamo una nuova variabile che memorizza il valore di restituzione della funzione di rango (). Infine, stampiamo la funzione Rank () restituita utilizzando la variabile "Rank" passandola alla funzione di stampa.

importa numpy
array = numpy.Matrix ([[8,1,7], [4,3,9], [5,2,6]])
Stampa ("Matrix originale è:", Array)
Rank = Numpy.linalg.matrix_rank (array)
Print ("Rank of a Matrix is:", Rank)

La seguente illustrazione mostra l'array tridimensionale che abbiamo inizializzato. Il risultato della funzione Rank () che otteniamo è "3".

Conclusione

Questo manuale ha fornito un'informazione sul numpy.linalg.matrix_rank () che è la funzione della biblioteca Numpy di Python. Abbiamo spiegato qual è lo scopo della funzione di rango. Abbiamo anche eseguito alcuni esempi per farti capire l'idea in modo più approfondito. È più efficiente da usare quando calcoliamo il grado dell'array che è maggiore di 5 × 5. Manualmente, possiamo calcolare facilmente il rango ma quando la dimensione dell'array è aumentata in una certa misura, diventa difficile calcolarlo manualmente.