Learn R Programming

xergm.common (version 1.7.4)

chemnet: German Toxic Chemicals Policy Network in the 1980s (Volker Schneider)

Description

The chemnet dataset contains network and attribute data and for the 30 most influential political actors with regard to toxic chemicals regulation in Germany in 1983/1984. While the original dataset contains up to 47 actors, this dataset contains the "complete influence core" of mutually relevant actors. The data are cross-sectional. There are no missing data; the response rate was 100 percent. Volker Schneider (University of Konstanz) collected this dataset for his dissertation (Schneider 1988). The dataset was later re-used for a journal publication on information exchange in policy networks (Leifeld and Schneider 2012). The chemnet dataset contains network relations on political/strategic and technical/scientific information exchange, influence attribution, and membership in policy committees/forums, as well as nodal attributes on the actor type and opinions about the six most salient issues related to the political process that was leading to a new chemicals law at the time being.

Usage

data(chemnet)

Arguments

Format

pol
is a directed 30 x 30 adjancency matrix indicating which row actor sends political/strategic information to which column actor. 1 indicates an information exchange tie, and 0 indicates the absence of a network tie.
scito
is a directed 30 x 30 adjacency matrix indicating which row actor sends technical/scientific information to which column actor. 1 indicates an information exchange tie, and 0 indicates the absence of a network tie. In contrast to political/strategic information exchange, two separate survey questions were asked about technical/scientific information exchange: sending information, and receiving information. The two matrices contain the same relation but one time from the sender's perspective and one time from the receiver's perspective. By combining the two matrices, one can create a "confirmed" technical/scientific information exchange relation. The scito matrix contains ties from the sender's perspective.
scifrom
is a directed 30 x 30 adjacency matrix indicating which row actor receives technical/scientific information from which column actor. 1 indicates an information exchange tie, and 0 indicates the absence of a network tie. In contrast to political/strategic information exchange, two separate survey questions were asked about technical/scientific information exchange: sending information, and receiving information. The two matrices contain the same relation but one time from the sender's perspective and one time from the receiver's perspective. By combining the two matrices, one can create a "confirmed" technical/scientific information exchange relation. The scifrom matrix contains ties from the receiver's perspective.
infrep
is a directed 30 x 30 adjancency matrix indicating which row actor deems which column actor "particularly influential". 1 indicates such a tie, and 0 indicates the absence of an influence attribution tie.
committee
is a 30 x 20 two-mode (bipartite) network matrix indicating which row actor is a member of which policy committee/forum (as indicated by the column labels). 1 indicates a membership tie, and 0 indicates non-membership.
types
is a one-column data.frame where the type variable contains the actor type of each node. The following values are possible:
  • gov (government actor, e.g., a federal ministry)
  • ig (interest group
  • io (international organization)
  • par (political party)
  • sci (scientific organization)
intpos
is a 30 x 6 matrix containing the interest positions of the 30 political actors on the six most salient political issues related to a pending new chemicals law. -1 indicates a negative stance, i.e., the actor rejects the proposal; 1 indicates a positive stance, i.e., the actor supports the proposal; and 0 indicates a neutral or absent opinion.

Source

The data were collected using paper-based questionnaires. The questionnaires were administered in personal interviews (PAPI). Further information, including the actual survey, data on additional actors, the full names of the policy committees/forums, and the full list of unabbreviated actor names can be found online at http://hdl.handle.net/1902.1/17004 in the replication archive of Leifeld and Schneider (2012). The dataset is publicly available. Questions about the data or the original study should be directed to Volker Schneider (volker.schneider@uni-konstanz.de), the author of the original study and person who collected the data.

References

Leifeld, Philip and Volker Schneider (2012): Information Exchange in Policy Networks. American Journal of Political Science 53(3): 731--744. http://dx.doi.org/10.1111/j.1540-5907.2011.00580.x. Schneider, Volker (1988): Politiknetzwerke der Chemikalienkontrolle. Eine Analyse einer transnationalen Politikentwicklung. Walter de Gruyter: Berlin/New York. Schneider, Volker and Philip Leifeld (2009): Ueberzeugungssysteme, Diskursnetzwerke und politische Kommunikation: Ein zweiter Blick auf die deutsche Chemikalienkontrolle der 1980er Jahre. In: Volker Schneider, Frank Janning, Philip Leifeld and Thomas Malang (editors): Politiknetzwerke. Modelle, Anwendungen und Visualisierungen. Pages 139--158. Wiesbaden: VS Verlag fuer Sozialwissenschaften. http://dx.doi.org/10.1007%2F978-3-531-91883-9_6.

Examples

Run this code
## Not run: 
# # Replication code for Leifeld and Schneider (2012), AJPS.
# # Note that the estimates can only be reproduced approximately 
# # due to internal changes in the statnet package.
# 
# # preparatory steps
# library("statnet")
# library("xergm")
# library("texreg")
# seed <- 12345
# set.seed(seed)
# data("chemnet")
# 
# # create confirmed network relation
# sci <- scito * t(scifrom)  # equation 1 in the AJPS paper
# prefsim <- dist(intpos, method = "euclidean")  # equation 2
# prefsim <- max(prefsim) - prefsim  # equation 3
# prefsim <- as.matrix(prefsim)
# committee <- committee %*% t(committee)  # equation 4
# diag(committee) <- 0 # the diagonal has no meaning
# types <- types[, 1]  # convert to vector
# 
# # create network objects and store attributes
# nw.pol <- network(pol) # political/stratgic information exchange
# set.vertex.attribute(nw.pol, "orgtype", types)
# set.vertex.attribute(nw.pol, "betweenness", 
#     betweenness(nw.pol)) # centrality
# 
# nw.sci <- network(sci) # technical/scientific information exchange
# set.vertex.attribute(nw.sci, "orgtype", types)
# set.vertex.attribute(nw.sci, "betweenness", 
#     betweenness(nw.sci)) # centrality
# 
# # ERGM: model 1 in the AJPS paper; only preference similarity
# model1 <- ergm(nw.pol ~ edges + edgecov(prefsim), 
#     control = control.ergm(seed = seed))
# summary(model1)
# 
# # ERGM: model 2 in the AJPS paper; complete model
# model2 <- ergm(nw.pol ~ 
#     edges + 
#     edgecov(prefsim) + 
#     mutual + 
#     nodemix("orgtype", base = -7) + 
#     nodeifactor("orgtype", base = -1) + 
#     nodeofactor("orgtype", base = -5) + 
#     edgecov(committee) + 
#     edgecov(nw.sci) + 
#     edgecov(infrep) + 
#     gwesp(0.1, fixed = TRUE) + 
#     gwdsp(0.1, fixed = TRUE), 
#     control = control.ergm(seed = seed)
# )
# summary(model2)
# 
# # ERGM: model 3 in the AJPS paper; only preference similarity
# model3 <- ergm(nw.sci ~ edges + edgecov(prefsim), 
#     control = control.ergm(seed = seed))
# summary(model3)
# 
# # ERGM: model 4 in the AJPS paper; complete model
# model4 <- ergm(nw.sci ~ 
#     edges + 
#     edgecov(prefsim) + 
#     mutual + 
#     nodemix("orgtype", base = -7) + 
#     nodeifactor("orgtype", base = -1) + 
#     nodeofactor("orgtype", base = -5) + 
#     edgecov(committee) + 
#     edgecov(nw.pol) + 
#     edgecov(infrep) + 
#     gwesp(0.1, fixed = TRUE) + 
#     gwdsp(0.1, fixed = TRUE), 
#     control = control.ergm(seed = seed)
# )
# summary(model4)
# 
# # regression table using the texreg package
# screenreg(list(model1, model2, model3, model4))
# 
# # goodness of fit using the btergm package
# gof2 <- gof(model2, roc = FALSE, pr = FALSE)
# gof2  # print gof output
# plot(gof2)  # visual inspection of GOF
# 
# gof4 <- gof(model4, roc = FALSE, pr = FALSE)
# gof4
# plot(gof4)
# 
# # MCMC diagnostics
# pdf("diagnostics2.pdf")
# mcmc.diagnostics(model2)
# dev.off()
# 
# pdf("diagnostics4.pdf")
# mcmc.diagnostics(model4)
# dev.off()
# ## End(Not run)

Run the code above in your browser using DataLab