The IDEANet project (NSF Grant # 2024271) aims to maximize scientific
discovery in network science by significantly lowering the analytic and
access barriers-to-entry for researchers. As part of this effort, the
ideanet
package offers a set of integrated modules to
securely access, process, analyze, and visualize existing network data
using expert-level analytics while conforming to requirements set by
source institutions. Our hope is that this project will increase
collaboration on intensive, cross-disciplinary data science questions
across the social and behavioral sciences.
ideanet
’s core analytic tools automatically generate
node- and system-level measures commonly used in the analysis of
sociocentric and egocentric network data. These default computations
maximize the ability of entry-level users and non-expert practitioners
to employ network measurements in further analyses while making all
users less prone to common data analytic errors. Moreover, we hope that
the ideanet
package will be a valuable resource in
educational settings, providing an accessible starting point for
training the next generation of network scholars.
Users applying ideanet
to sociocentric data can use the
netwrite
function to generate an extensive set of measures
and summaries of their networks. By applying a single, convenient
function to an edgelist, adjacency matrix, or adjacency list, users can
quickly produce the following measures:
netwrite
includes support for networks with weighted
edges, as well as for networks with multiple “types” or “levels” of
edges. netwrite
also produces several additional outputs
that aid in sociocentric network analysis. These include
cleanly-formatted edgelists, summary visualizations, and
igraph
objects for aggregate networks and networks of
specific edge types.
ideanet
features a set of additional functions designed
for working with egocentric data. The primary function in this set,
ego_netwrite
, reads in a data frame of egos, a second data
frame of alters nominated by each ego, and an optional third data frame
containing edges existing between alters as reported by an ego. Using
these data frames, ego_netwrite
generates measures of
centrality and position for each node in an ego network, summaries of
each individual ego network, and a summary of the data as a whole. These
outputs provide users with the means to make inferences from their data
at various levels of analysis, and allow users to identify typical
properties of networks in their data. Measures featured in
ego_netwrite
’s output include:
ideanet
includes modules for advanced analysis, allowing
researchers to extend the utility of netwrite
and its
outputs. Modules for Multiple Regression Quadratic Assignment Procedure
(MRQAP) and Positional (Role) Analysis are currently available, and
additional modules are expected to come in the near future.
The ideanetViz
Shiny app presents the output of
ideanet
’s workflow for sociocentric data in a clear and
accessible GUI. This GUI is convenient for users with limited R
experience and is useful for classrooms, workshops, and other
educational spaces. It is also useful for experienced users interested
in quick exploration of network data. Moreover, ideanetViz
streamlines customization of network visualizations and provides quick
access into ideanet
’s advanced analysis modules.
ideanet
is designed to be versatile and compatible with
other tools for social network analysis. The package includes a
convenient function for reading several types of sociocentric network
data files into R (netread
), including those associated
with software packages like UCINet and Pajek. This affords users a
greater ability to access and work with network data even if they decide
to use tools other than netwrite
for analysis.
ideanet
gives similar consideration to egocentric data.
Although ego_netwrite
requires three separate data frames
for egos, alters, and edges between alters, ego networks are often
stored in a single wide dataset. With this in mind, the
ego_reshape
function allows users to reshape their data
into a structure more compatible with ego_netwrite
and
other popular R packages for ego network analysis. Additionally, our
package includes a function specifically designed to read and process
data generated using Network
Canvas, an increasingly popular tool for capturing egocentric
network data. Further, ego_netwrite
gives users the option
to export their data as an egor
object for use with the
egor
R package, which enables users to fit exponential
random graph models using egocentric data.