IniziaInizia gratis

Matrici di adiacenza

In questo esercizio estrarrai e calcolerai le matrici di adiacenza di primo e di secondo ordine della rete. Hai già visto come estrarre la matrice di adiacenza di primo ordine usando la funzione as_adjaceny_matrix() nelle diapositive. Per la matrice di adiacenza di secondo ordine, devi moltiplicare la matrice di primo ordine per sé stessa e sostituire tutti i valori positivi con 1, dato che lavoriamo solo con reti non pesate. Inoltre, assicurati che gli elementi sulla diagonale siano 0, poiché non permettiamo autolink.

Questo esercizio fa parte del corso

Analitica predittiva con dati di rete in R

Visualizza il corso

Istruzioni dell'esercizio

  • Estrai la matrice di adiacenza della rete usando la funzione as_adjacency_matrix(). Chiama la matrice AdjacencyMatrix.
  • Calcola la matrice di adiacenza di secondo ordine moltiplicando AdjacencyMatrix per sé stessa e chiamala SecondOrderMatrix_adj.
  • Crea una nuova matrice, SecondOrderMatrix, condizionando su SecondOrderMatrix_adj per rendere tutti i valori positivi uguali a 1. Gli elementi sulla diagonale devono essere 0.
  • Ispeziona le prime 10 righe e le prime 10 colonne di SecondOrderMatrix.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Extract the adjacency matrix
AdjacencyMatrix <- as_adjacency_matrix(___)

# Compute the second order matrix
SecondOrderMatrix_adj <- ___ %*% ___

# Adjust the second order matrix
SecondOrderMatrix <- ((___) > 0) + 0
diag(SecondOrderMatrix) <- 0

# Inspect the second order matrix
SecondOrderMatrix[___:___, ___:___]
Modifica ed esegui il codice