R igraph 手册页

如果您从 R 中使用 igraph,请使用此选项

as_adjacency_matrix {igraph}R 文档

将图转换为邻接矩阵

描述

有时使用图的标准表示形式(例如邻接矩阵)会很有用。

用法

as_adjacency_matrix(
  graph,
  type = c("both", "upper", "lower"),
  attr = NULL,
  edges = FALSE,
  names = TRUE,
  sparse = igraph_opt("sparsematrices")
)

as_adj(
  graph,
  type = c("both", "upper", "lower"),
  attr = NULL,
  edges = FALSE,
  names = TRUE,
  sparse = igraph_opt("sparsematrices")
)

参数

要转换的图。

type

指定如何为无向图创建邻接矩阵。 对于有向图,此参数将被忽略。 可能的值:upper:使用矩阵的右上三角形,lower:使用矩阵的左下三角形,both:使用整个矩阵,返回一个对称矩阵。

attr

可以是 NULL 或一个字符字符串,指定边的属性名称。 如果为 NULL,则返回传统的邻接矩阵。 如果不为 NULL,则邻接矩阵中将包含给定边属性的值。 如果图有多条边,则包含(对于多条边)任意选择的边的边属性。 如果 edgesTRUE,则忽略此参数。

请注意,这仅适用于某些属性类型。 如果 sparse 参数为 TRUE,则属性必须是逻辑型或数值型。 如果 sparse 参数为 FALSE,则也允许字符型。 这种差异的原因是 Matrix 包尚不支持字符型稀疏矩阵。

逻辑标量,指定是否在矩阵中返回边 ID。 对于不存在的边,返回零。

names

逻辑常量,指定是否为矩阵分配行和列名称。 只有当图中存在 name 顶点属性时,才会分配这些名称。

sparse

逻辑标量,指定是否创建稀疏矩阵。 必须安装 ‘Matrix’ 包才能创建稀疏矩阵。

详细信息

as_adjacency_matrix 返回图的邻接矩阵,如果 sparseFALSE,则返回常规矩阵;如果 sparseTRUE,则返回 ‘Matrix’ 包中定义的稀疏矩阵。

一个 vcount(graph) 乘以 vcount(graph)(通常是)数值矩阵。

参见

graph_from_adjacency_matrix, read_graph

示例


g <- sample_gnp(10, 2/10)
as_adjacency_matrix(g)
V(g)$name <- letters[1:vcount(g)]
as_adjacency_matrix(g)
E(g)$weight <- runif(ecount(g))
as_adjacency_matrix(g, attr="weight")

[包 igraph 版本 1.3.5 索引]