Learn R Programming

sna (version 0.3)

netlogit: Logistic Regression for Network Data

Description

netlogit performs a logistic regression of the network variable in y on the network variables in stack x. The resulting fits (and coefficients) are then tested against the indicated null hypothesis.

Usage

netlogit(y, x, mode="digraph", diag=FALSE, nullhyp="cugtie", 
    reps=1000)

Arguments

y
Dependent network variable. This should be a matrix, for obvious reasons; NAs are allowed, and the data should be dichotomous.
x
Data array containing the stack of independent network variables. By assumption, the first dimension of the array indexes the graph, with the next two indexing the actors. Note that NAs are permitted, as is dichotomous data.
mode
String indicating the type of graph being evaluated. "Digraph" indicates that edges should be interpreted as directed; "graph" indicates that edges are undirected. mode is set to "digraph" by default.
diag
Boolean indicating whether or not the diagonal should be treated as valid data. Set this true if and only if the data can contain loops. diag is FALSE by default.
nullhyp
String indicating the particular null hypothesis against which to test the observed estimands. A value of "cug" implies a conditional uniform graph test (see cugtest) controlling for order only; "
reps
Integer indicating the number of draws to use for quantile estimation. (Relevant to the null hypothesis test only -- the analysis itself is unaffected by this parameter.) Note that, as for all Monte Carlo procedures, convergence is slower for more extre

Value

  • An object of class netlogit

Details

netlogit is primarily a front-end to the built-in glm routine. netlogit handles vectorization, sets up glm options, and deals with null hypothesis testing; the actual fitting is taken care of by glm.

Logistic network regression using is directly analogous to standard logistic regression elementwise on the appropriately vectorized adjacency matrices of the networks involved. As such, it is often a more appropriate model for fitting dichotomous response networks than is linear network regression.

Null hypothesis tests for logistic network regression are handled using either the conditional uniform graph hypothesis (the default) or QAP. See the help pages for these tests for a fuller description of each. Reasonable printing and summarizing of netlogit objects is provided by print.netlogit and summary.netlogit, respectively. No plot methods exist at this time.

References

Butts, C.T., and Carley, K.M. (2001). ``Multivariate Methods for Interstructural Analysis.'' CASOS working paper, Carnegie Mellon University. [object Object],[object Object] glm, netlm

#Create some input graphs x<-rgraph(20,4)

#Create a response structure y.l<-x[1,,]+4*x[2,,]+2*x[3,,] #Note that the fourth graph is #unrelated y.p<-apply(y.l,c(1,2),function(a){1/(1+exp(-a))}) y<-rgraph(20,tprob=y.p)

#Fit a netlogit model nl<-netlogit(y,x,reps=100)

#Examine the results summary(nl) regressionnetwork