| triad.classify {sna} | R Documentation |
triad.classify returns the Davis and Leinhardt classification of the triad indicated by tri in the gth graph of stack dat.
triad.classify(dat, g=1, tri=c(1, 2, 3))
dat |
A graph or graph stack |
g |
The index of the graph to be analyzed |
tri |
A triple containing the indices of the triad to be classified |
Every unoriented directed triad may occupy one of 16 distinct states. These states were used by Davis and Leinhardt as a basis for classifying triads within a larger structure; the distribution of triads within a graph (see triad.census), for instance, is linked to a range of substantive hypotheses (e.g., concerning structural balance). The Davis and Leinhardt classification scheme describes each triad by a string of four elements: the number of mutual (complete) dyads within the triad; the number of asymmetric dyads within the triad; the number of null (empty) dyads within the triad; and a configuration code for the triads which are not uniquely distinguished by the first three distinctions. The complete list of classes is as follows.
003012102021D021U021C111D111U030T030C201120D120U120C210300
These codes are returned by triad.classify as strings.
A string containing the triad classification, or NA if one or more edges were missing
Valued data and/or loops may cause strange behavior with this routine. Dichotomize/remove loops first.
Carter T. Butts buttsc@uci.edu
Davis, J.A. and Leinhardt, S. (1972). ``The Structure of Positive Interpersonal Relations in Small Groups.'' In J. Berger (Ed.), Sociological Theories in Progress, Volume 2, 218-251. Boston: Houghton Mifflin.
Wasserman, S., and Faust, K. (1994). Social Network Analysis: Methods and Applications. Cambridge: Cambridge University Press.
#Generate a random graph g<-rgraph(10) #Classify the triads (1,2,3) and (2,3,4) triad.classify(g,tri=c(1,2,3)) triad.classify(g,tri=c(1,2,3)) #Plot the triads in question gplot(g[1:3,1:3]) gplot(g[2:4,2:4])