Estimate a Consensus Structure from Multiple Observations
consensus
estimates a central or consensus structure given multiple observations, using one of several algorithms.
consensus(dat, mode="digraph", diag=FALSE, method="central.graph", tol=1e-06, maxiter=1e3, verbose=TRUE, no.bias=FALSE)
dat |
a set of input graphs (must have same order). |
mode |
|
diag |
logical; should diagonals (loops) be treated as data? |
method |
one of |
tol |
convergence tolerance for the iterative reweighting and B-R algorithms. |
maxiter |
maximum number of iterations to take (regardless of convergence) for the iterative reweighting and B-R algorithms. |
verbose |
logical; should bias and competency parameters be reported (where computed)? |
no.bias |
logical; should responses be assumed to be unbiased? |
The term “consensus structure” is used by a number of authors to reflect a notion of shared or common perceptions of social structure among a set of observers. As there are many interpretations of what is meant by “consensus” (and as to how best to estimate it), several algorithms are employed here:
central.graph
: Estimate the consensus structure using the central graph. This corresponds to a “median response” notion of consensus.
single.reweight
: Estimate the consensus structure using subject responses, reweighted by mean graph correlation. This corresponds to an “expertise-weighted vote” notion of consensus.
iterative.reweight
: Similar to single.reweight
, but the consensus structure and accuracy parameters are estimated via an iterated proportional fitting scheme. The implementation employed here uses both bias and competency parameters.
romney.batchelder
: Fits a Romney-Batchelder informant accuracy model using IPF. This is very similar to iterative.reweight
, but can be interpreted as the result of a process in which each informant report is correct with a probability equal to the informant's competency score, and otherwise equal to a Bernoulli trial with parameter equal to the informant's bias score.
PCA.reweight
: Estimate the consensus using the (scores on the) first component of a network PCA. This corresponds to a “shared theme” or “common element” notion of consensus.
LAS.intersection
: Estimate the consensus structure using the locally aggregated structure (intersection rule). In this model, an i->j edge exists iff i and j agree that it exists.
LAS.union
: Estimate the consensus structure using the locally aggregated structure (union rule). In this model, an i->j edge exists iff i or j agree that it exists.
OR.row
: Estimate the consensus structure using own report. Here, we take each informant's outgoing tie reports to be correct.
OR.col
: Estimate the consensus structure using own report. Here, we take each informant's incoming tie reports to be correct.
Note that the results returned by the single weighting algorithms are not dichotomized by default; since some algorithms thus return valued graphs, dichotomization may be desirable prior to use.
It should be noted that a model for estimating an underlying criterion structure from multiple informant reports is provided in bbnam
; if your goal is to reconstruct an “objective” network from informant reports, this (or the R-B model) may prove more useful than the ad-hoc solutions.
An adjacency matrix representing the consensus structure
Carter T. Butts buttsc@uci.edu
Banks, D.L., and Carley, K.M. (1994). “Metric Inference for Social Networks.” Journal of Classification, 11(1), 121-49.
Butts, C.T., and Carley, K.M. (2001). “Multivariate Methods for Inter-Structural Analysis.” CASOS Working Paper, Carnegie Mellon University.
Krackhardt, D. (1987). “Cognitive Social Structures.” Social Networks, 9, 109-134.
Romney, A.K.; Weller, S.C.; and Batchelder, W.H. (1986). “Culture as Consensus: A Theory of Culture and Informant Accuracy.” American Anthropologist, 88(2), 313-38.
#Generate some test data g<-rgraph(5) g.pobs<-g*0.9+(1-g)*0.5 g.obs<-rgraph(5,5,tprob=g.pobs) #Find some consensus structures consensus(g.obs) #Central graph consensus(g.obs,method="single.reweight") #Single reweighting consensus(g.obs,method="PCA.reweight") #1st component in network PCA
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.