ComeçarComece de graça

Grafos aleatórios

Gerar grafos aleatórios é um método importante para investigar quão prováveis (ou improváveis) são outras métricas de rede, dadas certas propriedades do grafo original. O grafo aleatório mais simples tem o mesmo número de vértices do seu grafo original e aproximadamente a mesma densidade. Aqui, você vai criar um grafo aleatório baseado na rede original de Forrest Gump.

Este exercício faz parte do curso

Network Analysis in R

Ver curso

Instruções do exercício

  • Gere um grafo aleatório usando a função erdos.renyi.game(). O primeiro argumento n deve ser o número de nós do grafo g, que pode ser calculado com gorder(). O segundo argumento, p.or.m, deve ser a densidade do grafo g, que você armazenou anteriormente no objeto gd. O último argumento deve ser type='gnp' para informar à função que você está usando a densidade do grafo para gerar um grafo aleatório. Guarde esse novo grafo no vetor g.random.
  • Obtenha a densidade do grafo aleatório g.random. Se você gerar um grafo aleatório algumas vezes, vai notar que esse valor varia um pouco, mas fica aproximadamente igual à densidade do seu grafo original g do exercício anterior, armazenada no objeto gd.
  • Calcule o comprimento médio do caminho (average path length) do grafo aleatório g.random.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

library(igraph)

# Create one random graph with the same number of nodes and edges as g
g.random <- ___(n = ___, p.or.m = ___, type = "gnp")

g.random

plot(g.random)

# Get density of new random graph `g.random`
___(___)

# Get the average path length of the random graph g.random
___(___, directed = FALSE)
Editar e executar o código