install.packages("RSiena", dependencies = TRUE)
install.packages("snow", dependencies = TRUE)
install.packages("rlecuyer", dependencies = TRUE)
install.packages("xtable", dependencies = TRUE)
install.packages("car", dependencies = TRUE)
library(RSiena)
library(snow)
library(network)
library(rlecuyer)
library(xtable)
library(car)
load("data/recognize_t1.rda")
load("data/recognize_t2.rda")
load("data/breakout_t1.rda")
load("data/breakout_t2.rda")
load("data/meaningful_t1.rda")
load("data/meaningful_t2.rda")
rec_t1 <-as.matrix(recognize_t1, matrix.type="adjacency")
rec_t2 <-as.matrix(recognize_t2, matrix.type="adjacency")
break_t1 <-as.matrix(breakout_t1, matrix.type="adjacency")
break_t2 <-as.matrix(breakout_t2, matrix.type="adjacency")
mean_t1 <-as.matrix(meaningful_t1,matrix.type="adjacency")
mean_t2 <-as.matrix(meaningful_t2,matrix.type="adjacency")
# Make sure there are only 0's, 1's, and 10's
table(rec_t1)
table(rec_t2)
table(break_t1)
table(break_t1)
table(mean_t1)
table(mean_t2)
attributes.mat <- as.matrix(read.csv("data/attributes.csv",header=TRUE))
prefix <- coCovar(attributes.mat[,1])
program <- coCovar(attributes.mat[,2])
In this case, we are making three.
## Simple Model
# Set dependent variables
recognition <-(sienaNet(array(c(rec_t1, rec_t2), dim=c(13,13,2)), allowOnly=FALSE))
breakouts <-(sienaNet(array(c(break_t1, break_t2),dim=c(13,13,2)), allowOnly=FALSE))
meaningful <-(sienaNet(array(c(mean_t1, mean_t2), dim=c(13,13,2)), allowOnly=FALSE))
# Define what data are to be used in the analysis
mydata01 <- sienaDataCreate(recognition, prefix, program)
myeff01 <- getEffects(mydata01)
mydata02 <- sienaDataCreate(breakouts, prefix, program)
myeff02 <- getEffects(mydata02)
mydata03 <- sienaDataCreate(meaningful, prefix, program)
myeff03 <- getEffects(mydata03)
Next, we ask Siena to evaluate the network for the types of structural covariates we could use in the analysis.
# See what effects are available
effectsDocumentation(myeff01)
effectsDocumentation(myeff02)
effectsDocumentation(myeff03)
These are the variables that we are actually including in the model.
# Include Effects (Structural)
myeff01 <- includeEffects(myeff01,inPOP, include=TRUE)
myeff01 <- includeEffects(myeff01,outPop, include=TRUE)
myeff01 <- includeEffects(myeff01,Jin, include=TRUE)
myeff01 <- includeEffects(myeff01,recip, include=FALSE)
myeff01 <- includeEffects(myeff01,cycle3, include=FALSE)
myeff01 <- includeEffects(myeff01,transTies, include=FALSE)
myeff01 <- includeEffects(myeff01,gwespRR, include=FALSE)
myeff01 <- includeEffects(myeff01,denseTriads, include=FALSE)
myeff01 <- includeEffects(myeff01,balance, include=FALSE)
# Include the exogenous variables
myeff01 <- includeEffects(myeff01,altSqX, interaction1='prefix', include=TRUE)
myeff01 <- includeEffects(myeff01,altSqX, interaction1='program', include=TRUE)
myeff01 <- includeEffects(myeff01,altX, interaction1='prefix', include=FALSE)
myeff01 <- includeEffects(myeff01,altX, interaction1='program', include=FALSE)
# Estimate Model
mymodel01 <- sienaModelCreate(projname='recognition_01')
ans01 <- siena07(mymodel01,data=mydata01,effects=myeff01,batch=FALSE,verbose=FALSE)
ans01
print01Report(mydata01,modelname='recognize_01')
# Include Effects (Structural Only)
myeff02 <- includeEffects(myeff02,recip, include=TRUE)
myeff02 <- includeEffects(myeff02,cycle3, include=FALSE)
myeff02 <- includeEffects(myeff02,transTies, include=TRUE)
myeff02 <- includeEffects(myeff02,gwespRR, include=FALSE)
myeff02 <- includeEffects(myeff02,denseTriads,include=FALSE)
myeff02 <- includeEffects(myeff02,balance, include=FALSE)
# Include the exogenous variables
myeff02 <- includeEffects(myeff02,altSqX, interaction1='prefix', include=TRUE)
myeff02 <- includeEffects(myeff02,altSqX, interaction1='program', include=TRUE)
myeff02 <- includeEffects(myeff02,altX, interaction1='prefix', include=FALSE)
myeff02 <- includeEffects(myeff02,altX, interaction1='program', include=FALSE)
# Estimate Model
mymodel02 <- sienaModelCreate(projname='recognition_02')
ans02 <- siena07(mymodel02,data=mydata02,effects=myeff02,batch=FALSE,verbose=FALSE)
ans02
print01Report(mydata02,modelname='breakout_02')
# Include Effects (Structural Only)
myeff03 <- includeEffects(myeff03,recip, include = TRUE)
myeff03 <- includeEffects(myeff03,cycle3, include = TRUE)
myeff03 <- includeEffects(myeff03,transTies, include = TRUE)
myeff03 <- includeEffects(myeff03,gwespRR, include = FALSE)
myeff03 <- includeEffects(myeff03,denseTriads, include = TRUE)
myeff03 <- includeEffects(myeff03,balance, include = TRUE)
# Include the exogenous variables
myeff03 <- includeEffects(myeff03,altSqX, interaction1='prefix', include=TRUE)
myeff03 <- includeEffects(myeff03,altSqX, interaction1='program', include=TRUE)
myeff03 <- includeEffects(myeff03,altX, interaction1='prefix', include=FALSE)
myeff03 <- includeEffects(myeff03,altX, interaction1='program', include=FALSE)
# Estimate Model
mymodel03 <- sienaModelCreate(projname='recognition_03')
ans03 <- siena07(mymodel03,data=mydata03,effects=myeff03,batch=FALSE,verbose=FALSE)
ans03
print01Report(mydata03,modelname='recognize_03')