contract {igraph} | R Documentation |
This function creates a new graph, by merging several vertices into one. The vertices in the new graph correspond to sets of vertices in the input graph.
contract(graph, mapping, vertex.attr.comb = igraph_opt("vertex.attr.comb"))
graph |
The input graph, it can be directed or undirected. |
mapping |
A numeric vector that specifies the mapping. Its elements correspond to the vertices, and for each element the id in the new graph is given. |
vertex.attr.comb |
Specifies how to combine the vertex attributes in
the new graph. Please see |
The attributes of the graph are kept. Graph and edge attributes are
unchanged, vertex attributes are combined, according to the
vertex.attr.comb
parameter.
A new graph object.
Gabor Csardi csardi.gabor@gmail.com
Other community:
as_membership()
,
cluster_edge_betweenness()
,
cluster_fast_greedy()
,
cluster_fluid_communities()
,
cluster_infomap()
,
cluster_label_prop()
,
cluster_leading_eigen()
,
cluster_leiden()
,
cluster_louvain()
,
cluster_optimal()
,
cluster_spinglass()
,
cluster_walktrap()
,
compare()
,
groups()
,
make_clusters()
,
membership()
,
modularity.igraph()
,
plot_dendrogram()
,
split_join_distance()
g <- make_ring(10)
g$name <- "Ring"
V(g)$name <- letters[1:vcount(g)]
E(g)$weight <- runif(ecount(g))
g2 <- contract(g, rep(1:5, each = 2),
vertex.attr.comb = toString
)
## graph and edge attributes are kept, vertex attributes are
## combined using the 'toString' function.
print(g2, g = TRUE, v = TRUE, e = TRUE)