Matrices d'adjacence
Dans cet exercice, vous allez extraire et calculer les matrices d'adjacence de premier et de deuxième ordre du réseau.
Vous avez déjà vu comment extraire la matrice d'adjacence de premier ordre à l'aide de la fonction as_adjaceny_matrix() dans le diaporama.
Pour la matrice d'adjacence de deuxième ordre, vous devez multiplier la matrice de premier ordre par elle-même et remplacer toutes les valeurs positives par 1, puisque nous travaillons uniquement avec des réseaux non pondérés. Vous devez aussi vous assurer que les éléments sur la diagonale sont à 0, car nous n'autorisons pas les boucles (self-edges).
Cette activité fait partie du cours
Analytique prédictive avec des données en réseau dans R
Instructions de l’exercice
- Extrayez la matrice d'adjacence du réseau à l'aide de la fonction
as_adjacency_matrix(). Nommez la matriceAdjacencyMatrix. - Calculez la matrice d'adjacence de deuxième ordre en multipliant
AdjacencyMatrixpar elle-même et appelez-laSecondOrderMatrix_adj. - Créez une nouvelle matrice,
SecondOrderMatrix, en conditionnantSecondOrderMatrix_adjpour que toutes les valeurs positives soient égales à 1. Les éléments sur la diagonale doivent être 0. - Inspectez les 10 premières lignes et les 10 premières colonnes de
SecondOrderMatrix.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# 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[___:___, ___:___]