funByBlocks.default {blockmodeling} | R Documentation |

Computes a value of a function over blocks of a matrix, defined by a partition.

```
## Default S3 method:
funByBlocks(
x = M,
clu,
M = x,
ignore.diag = "default",
sortNames = TRUE,
FUN = "mean",
...
)
## S3 method for class 'optMorePar'
funByBlocks(x, which = 1, orderClu = FALSE, sortNames = NULL, ...)
## S3 method for class 'opt.more.par'
funByBlocks(x, which = 1, orderClu = FALSE, sortNames = NULL, ...)
funByBlocks(x, ...)
fun.by.blocks(x, ...)
```

`x` |
An object of suitable class or a matrix representing the (usually valued) network. For now, only one-relational networks are supported. The network can have one or more modes (different kinds of units with no ties among themselves. If the network is not two-mode, the matrix must be square. |

`clu` |
A partition. Each unique value represents one cluster. If the network is one-mode, then this should be a vector, else a list of vectors, one for each mode. |

`M` |
A matrix representing the (usually valued) network. For now, only one-relational networks are supported. The network can have one or more modes (different kinds of units with no ties among themselves. If the network is not two-mode, the matrix must be square. |

`ignore.diag` |
Should the diagonal be ignored. |

`sortNames` |
Should the rows and columns of the matrix be sorted based on their names. |

`FUN` |
The function to be computed over the blocks. |

`...` |
Further arguments to |

`which` |
Which (if several) of the "best" solutions should be used. |

`orderClu` |
Should the partition be ordered before computing. |

A numerical matrix of `FUN`

values by blocks, induced by a partition `clu`

.

Aleš Žiberna

Žiberna, A. (2007). Generalized Blockmodeling of Valued Networks. Social Networks, 29(1), 105-126. doi: 10.1016/j.socnet.2006.04.002

Žiberna, A. (2008). Direct and indirect approaches to blockmodeling of valued networks in terms of regular equivalence. Journal of Mathematical Sociology, 32(1), 57-84. doi: 10.1080/00222500701790207

```
n <- 8 # If larger, the number of partitions increases dramatically,
# as does if we increase the number of clusters
net <- matrix(NA, ncol = n, nrow = n)
clu <- rep(1:2, times = c(3, 5))
tclu <- table(clu)
net[clu == 1, clu == 1] <- rnorm(n = tclu[1] * tclu[1], mean = 0, sd = 1)
net[clu == 1, clu == 2] <- rnorm(n = tclu[1] * tclu[2], mean = 4, sd = 1)
net[clu == 2, clu == 1] <- rnorm(n = tclu[2] * tclu[1], mean = 0, sd = 1)
net[clu == 2, clu == 2] <- rnorm(n = tclu[2] * tclu[2], mean = 0, sd = 1)
# Optimizing 10 random partitions with optRandomParC
res <- optRandomParC(M = net, k = 2, rep = 10, approaches = "hom", homFun = "ss", blocks = "com")
plot(res) # Hopefully we get the original partition
funByBlocks(res)
# Computing mean by blocks, ignoring the diagonal (default)
```

[Package *blockmodeling* version 1.0.5 Index]