只计算大小为 k 的图案的子集
Count only a subset of motifs of size k
我想计算树图中大小为 4 的图案:
library(igraph)
g <- barabasi.game(100)
census.motifs <- motifs(g, size=4)[c(4,8,13,30)]
有4个顶点的图有217种可能,但在有向有根树中只能出现4种。
有没有办法告诉 igraph 它只需要查找这 4 个?或者 faster/clever 方法来做到这一点?
使用 ergm 包 http://svitsrv25.epfl.ch/R-doc/library/ergm/html/ergm-terms.html
可以将有向根树中的四个基序计算为 k-instars
一个 k-instar 是一组共享一个共同根的 k 个节点。如果 n 是树中的节点数,则 4 个基序的计数将是 3 龄星(完全连接)的数量,(n-3) 乘以 2 龄星的数量(两条边连接到根和一条边other node), (n-2) 选择 2 倍的 1-instars(一条边连接根节点和另外两个节点),n 选择 4 减去前三个计数的总和。在 R 中你可以使用,
library(intergraph)
library(ergm)
library(igraph)
n <- 100
g <- barabasi.game(n)
kistars <- summary(asNetwork(g)~istar(1:3))
kistars[3]
(n-3)*kistars[2]
choose(n-2,2)*kistars[1]
choose(n,4)*sum(kistars)
我想计算树图中大小为 4 的图案:
library(igraph)
g <- barabasi.game(100)
census.motifs <- motifs(g, size=4)[c(4,8,13,30)]
有4个顶点的图有217种可能,但在有向有根树中只能出现4种。
有没有办法告诉 igraph 它只需要查找这 4 个?或者 faster/clever 方法来做到这一点?
使用 ergm 包 http://svitsrv25.epfl.ch/R-doc/library/ergm/html/ergm-terms.html
可以将有向根树中的四个基序计算为 k-instars一个 k-instar 是一组共享一个共同根的 k 个节点。如果 n 是树中的节点数,则 4 个基序的计数将是 3 龄星(完全连接)的数量,(n-3) 乘以 2 龄星的数量(两条边连接到根和一条边other node), (n-2) 选择 2 倍的 1-instars(一条边连接根节点和另外两个节点),n 选择 4 减去前三个计数的总和。在 R 中你可以使用,
library(intergraph)
library(ergm)
library(igraph)
n <- 100
g <- barabasi.game(n)
kistars <- summary(asNetwork(g)~istar(1:3))
kistars[3]
(n-3)*kistars[2]
choose(n-2,2)*kistars[1]
choose(n,4)*sum(kistars)