Use this if you are using igraph from R
Generate bipartite graphs using the Erdos-Renyi model
sample_bipartite(n1, n2, type = c("gnp", "gnm"), p, m, directed = FALSE, mode = c("out", "in", "all")) bipartite(...)
n1 |
Integer scalar, the number of bottom vertices. |
n2 |
Integer scalar, the number of top vertices. |
type |
Character scalar, the type of the graph, ‘gnp’ creates a $G(n,p)$ graph, ‘gnm’ creates a $G(n,m)$ graph. See details below. |
p |
Real scalar, connection probability for $G(n,p)$ graphs. Should not be given for $G(n,m)$ graphs. |
m |
Integer scalar, the number of edges for $G(n,p)$ graphs. Should not be given for $G(n,p)$ graphs. |
directed |
Logical scalar, whether to create a directed graph. See also
the |
mode |
Character scalar, specifies how to direct the edges in directed graphs. If it is ‘out’, then directed edges point from bottom vertices to top vertices. If it is ‘in’, edges point from top vertices to bottom vertices. ‘out’ and ‘in’ do not generate mutual edges. If this argument is ‘all’, then each edge direction is considered independently and mutual edges might be generated. This argument is ignored for undirected graphs. |
... |
Passed to |
Similarly to unipartite (one-mode) networks, we can define the $G(n,p)$, and $G(n,m)$ graph classes for bipartite graphs, via their generating process. In $G(n,p)$ every possible edge between top and bottom vertices is realized with probablity $p$, independently of the rest of the edges. In $G(n,m)$, we uniformly choose $m$ edges to realize.
A bipartite igraph graph.
Gabor Csardi csardi.gabor@gmail.com
sample_gnp
for the unipartite version.
## empty graph sample_bipartite(10, 5, p=0) ## full graph sample_bipartite(10, 5, p=1) ## random bipartite graph sample_bipartite(10, 5, p=.1) ## directed bipartite graph, G(n,m) sample_bipartite(10, 5, type="Gnm", m=20, directed=TRUE, mode="all")