# combineNodes

0th

Percentile

##### combineNodes

A function to combine, or collapse, a specified set of nodes in a graph.

Keywords
manip
##### Usage
combineNodes(nodes, graph, newName, ...)
"combineNodes"(nodes, graph, newName, collapseFunction=sum)
##### Arguments
nodes
A set of nodes that are to be collapsed.
graph
The graph containing the nodes
newName
The name for the new, collapsed node.
collapseFunction
Function or character giving the name of a function used to collapse the edge weights after combining nodes. The default is to sum up the weights, but mean would be a useful alternative.
...
##### Details

The nodes specified are reduced to a single new node with label given by newName. The in and out edges of the set of nodes are all made into in and out edges for the new node.

##### Value

An new instance of a graph of the same class as graph is returned. This new graph has the specified nodes reduced to a single node.

inEdges, addNode

##### Aliases
• combineNodes
• combineNodes,character,graphNEL,character-method
##### Examples
  V <- LETTERS[1:4]
edL1 <- vector("list", length=4)
names(edL1) <- V
for(i in 1:4)
edL1[[i]] <- list(edges=c(2,1,4,3)[i], weights=sqrt(i))
gR <- graphNEL(nodes=V, edgeL=edL1, edgemode="directed")
edgeWeights(combineNodes(c("B","D"), gR, "X"))$K edgeWeights(combineNodes(c("B","D"), gR, "X", mean))$K