НачатьНачать бесплатно

Матрицы смежности

В этом упражнении вы извлечёте и вычислите матрицы смежности первого и второго порядка для сети.
Вы уже видели, как извлекать матрицу смежности первого порядка с помощью функции as_adjaceny_matrix() на слайдах. Для матрицы смежности второго порядка нужно умножить матрицу первого порядка на саму себя, а затем заменить все положительные значения на 1 — поскольку мы работаем только с невзвешенными сетями. Кроме того, необходимо убедиться, что элементы на диагонали равны 0, так как петли (рёбра из узла в самого себя) не допускаются.

Это упражнение является частью курса

Прогнозная аналитика на основе сетевых данных в R

Посмотреть курс

Инструкции к упражнению

  • Извлеките матрицу смежности сети с помощью функции as_adjacency_matrix(). Назовите матрицу AdjacencyMatrix.
  • Вычислите матрицу смежности второго порядка, умножив AdjacencyMatrix на саму себя, и присвойте результату имя SecondOrderMatrix_adj.
  • Создайте новую матрицу SecondOrderMatrix, применив к SecondOrderMatrix_adj условие: все положительные значения должны быть равны 1, а элементы на диагонали — 0.
  • Выведите первые 10 строк и первые 10 столбцов матрицы SecondOrderMatrix.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# 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[___:___, ___:___]
Редактировать и запускать код