从给定的度列表创建随机图或其对应的邻接矩阵

Create a random graph or its corresponding adjacency matrix from a given degree list

我在 R 中遇到以下问题: 我有一个向量,其中包含我的图中 200 个节点的度数。严格来说他们应该出示学位。 是否可以根据节点 i = 1, ...,200 的这些现有度创建随机图及其邻接矩阵?

例如,下面输入了一些矢量度数:

118 134 120 124 102 100 126 123 112 3 3 4 6 4 4 2 3 2 3 8 5 3 2 4 5 7 3 4 5 8 3 4 2 9 0 1 4 4 4 6 5 2 2 4 4 7 6 5 5 5 3 3 4 5 5 5 1 3 6 4 8 7 9 6 3 2 3 6 4 7 2 8 7 6 9 3 1 3 [...]

我认为您可以使用 igraph 中的 sample_degseq

library(igraph)
outdegrees <- c(2, 1, 1, 2, 4)
g <- sample_degseq(outdegrees, method = "simple.no.multiple")
get.adjacency(g)
# 5 x 5 sparse Matrix of class "dgCMatrix"
# 
# [1,] . . . 1 1
# [2,] . . . . 1
# [3,] . . . . 1
# [4,] 1 . . . 1
# [5,] 1 1 1 1 .
plot(g)