CommencerCommencer gratuitement

Matrices d’adjacence

Dans cet exercice, vous allez extraire et calculer les matrices d’adjacence d’ordre 1 et d’ordre 2 du réseau. Vous avez déjà vu comment extraire la matrice d’adjacence d’ordre 1 avec la fonction as_adjaceny_matrix() dans le diaporama. Pour la matrice d’adjacence d’ordre 2, vous devez multiplier la matrice d’ordre 1 par elle-même et remplacer toutes les valeurs positives par 1, car nous travaillons uniquement avec des réseaux non pondérés. Assurez-vous aussi que les éléments sur la diagonale valent 0, puisque les boucles (self-edges) ne sont pas autorisées.

Cet exercice fait partie du cours

Analytique prédictive avec des données en réseau sous R

Afficher le cours

Instructions

  • Extrayez la matrice d’adjacence du réseau avec la fonction as_adjacency_matrix(). Nommez la matrice AdjacencyMatrix.
  • Calculez la matrice d’adjacence d’ordre 2 en multipliant AdjacencyMatrix par elle-même et appelez-la SecondOrderMatrix_adj.
  • Créez une nouvelle matrice, SecondOrderMatrix, en conditionnant sur SecondOrderMatrix_adj pour 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 cet exemple de code.

# 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[___:___, ___:___]
Modifier et exécuter le code