Find Clusters of Positions Based on an Equivalence Relation
equiv.clust
uses a definition of approximate equivalence (equiv.fun
) to form a hierarchical clustering of network positions. Where dat
consists of multiple relations, all specified relations are considered jointly in forming the equivalence clustering.
equiv.clust(dat, g=NULL, equiv.dist=NULL, equiv.fun="sedist", method="hamming", mode="digraph", diag=FALSE, cluster.method="complete", glabels=NULL, plabels=NULL, ...)
dat |
one or more graphs. |
g |
the elements of |
equiv.dist |
a matrix of distances, by which vertices should be clustered. (Overrides |
equiv.fun |
the distance function to use in clustering vertices (defaults to |
method |
|
mode |
“graph” or “digraph,” as appropriate. |
diag |
a boolean indicating whether or not matrix diagonals (loops) should be interpreted as useful data. |
cluster.method |
the hierarchical clustering method to use (see |
glabels |
labels for the various graphs in |
plabels |
labels for the vertices of |
... |
additional arguments to |
This routine is essentially a joint front-end to hclust
and various positional distance functions, though it defaults to structural equivalence in particular. Taking the specified graphs as input, equiv.clust
computes the distances between all pairs of positions using equiv.fun
(unless distances are supplied in equiv.dist
), and then performs a cluster analysis of the result. The return value is an object of class equiv.clust
, for which various secondary analysis methods exist.
An object of class equiv.clust
See sedist
for an example of a distance function compatible with equiv.clust
.
Carter T. Butts buttsc@uci.edu
Breiger, R.L.; Boorman, S.A.; and Arabie, P. (1975). “An Algorithm for Clustering Relational Data with Applications to Social Network Analysis and Comparison with Multidimensional Scaling.” Journal of Mathematical Psychology, 12, 328-383.
Burt, R.S. (1976). “Positions in Networks.” Social Forces, 55, 93-122.
Wasserman, S., and Faust, K. Social Network Analysis: Methods and Applications. Cambridge: Cambridge University Press.
#Create a random graph with _some_ edge structure g.p<-sapply(runif(20,0,1),rep,20) #Create a matrix of edge #probabilities g<-rgraph(20,tprob=g.p) #Draw from a Bernoulli graph #distribution #Cluster based on structural equivalence eq<-equiv.clust(g) plot(eq)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.