Learn R Programming

multiplex (version 3.7)

multiplex-package: Algebraic Tools for the Analysis of Multiple Social Networks

Description

One of the aims of the "multiplex" package is to meet the necessity to count with an analytic tool specially designed for social networks with relations at different levels. In this sense, "multiplex" counts with functions that models the local role algebras of the network based on the simple and compound relations existing in the system. "multiplex" has also a procedure for the construction and analysis of signed networks through the semiring structure. With "multiplex", the different relational patterns at the dyadic level in the network can be obtained as well, which can serve for a further analysis with different types of structural theories.

It is also possible to take the attributes of the actors in the analysis of multiple networks with different forms to incorporate this kind of information to the existing relational structures. For instance, the network exposure of the actors can be taken in the context of multiple networks in this case, or else the attributes can be embedded in the resulted algebraic structures.

Arguments

Author

J. Antonio Rivero Ostoic

Maintainer: Antonio Rivero Ostoic <multiplex@post.com>

Details

Package:multiplex
Type:Package
Version:3.7
Date:30 September 2024
License:GPL-3
LazyLoad:yes

One way to work with this package is typically by starting with a specific algebraic structure like a semigroup that is a closed system made of a set of elements and an associative operation on it. This algebraic structure is constructed by the semigroup function, and it takes an array of (usually but not necessarily) multiple binary relations, which constitute the generator relations. The Word Table and the Edge Table serve to describe completely the semigroup, and they are constructed with the functions wordT and edgeT respectively. Unique relations of the complete semigroup are given by the strings function together with the set of equations with strings of length \(k\). The partial.order function specifies the ordering of the string elements in the semigroup, and the function hasse (or function diagram with this type) produces the lattice of inclusions of a structure having ordered relations.

Semigroups can be analysed further by the green.rel function, and their found equivalence classes can be visualized as “egg-box” type with the diagram function. Semigroups can be reduced as well with a decomposition process, which can be based on congruence or \(\pi\)-relations of the unique strings. In this case pi.rels, cngr, and decomp will make this job for you either for an abstract or a partially ordered structure.

In addition, it is possible to analyse structural balance in signed networks, which are built by signed, through the algebraic structure of the semiring. A semiring is an algebraic structure that combines an abstract semigroup with identity under multiplication and a commutative monoid under addition. The semiring function is capable to perform both balance and cluster semiring either with cycles or semicycles.

There are other capabilities in the package that are not strictly algebraic. For instance, the dichot serves to dichotomize the input data with a specified cut-off value, rm.isol removes isolated nodes, and the perm function performs an automorphism of the elements in the representative array. All these functions are built for multiple networks represented by high dimensional structures that can be constructed by function zbind to produce three-dimensional arrays.

Furthermore, "multiplex" creates a Relation-Box with the rbox function, and it implements the Compositional Equivalence expressed in the cumulated person hierarchy of the network computed with the cph function.

Relational bundles are identified through the bundles function, which provides lists of pair relations. The transf function serves to transform pairwise list data into a matrix form and viceversa. The enumeration of the different bundle classes is given by bundle.census, while summaryBundles prints the bundle class patterns results. An advantage of counting with the bundle patterns is that the different types of bundles serve to establish a system inside the network, in which it is possible to measure the network exposure in multivariate relational systems. Such features can be realized via the rel.sys and expos functions, respectively. Several attributes can be derived by galois, which provides an algebraic approach for the analysis of two-mode networks.

Finally, multivariate network data can be created using a send receive ties edge list format that can be loaded and transformed to arrays through the edgel function. Other formats for multiple network data like UCINET dl or Visone gml can be imported and exported as well with the "multiplex" package. Visualization of multiple network structures is possible with the "multigraph" package that depends on "multiplex".

References

Pattison, P.E. Algebraic Models for Social Networks. Structural Analysis in the Social Sciences. Cambridge University Press. 1993.

Boyd, J.P. Social Semigroups. A unified theory of scaling and blockmodelling as applied to social networks. George Mason University Press. 1991.

Lorrain, F. and H.C. White, “Structural Equivalence of Individuals in Social Networks.” Journal of Mathematical Sociology, 1, 49-80. 1971.

Boorman, S.A. and H.C. White, “Social Structure from Multiple Networks. II. Role Structures.” American Journal of Sociology, 81 (6), 1384-1446. 1976.

Ostoic, J.A.R. Algebraic Analysis of Social Networks. Wiley Series in Computational and Quantitative Social Sciences. Wiley. 2021.

See Also

multigraph, bmgraph, ccgraph.

Examples

Run this code
# create the data: two binary relations among three elements
arr <- round( replace( array(runif(18), c(3,3,2)), array(runif(18),
       c(3,3,2))>.5, 3 ) )

# dichotomize it with customized cutoff value
dichot(arr, c = 3)

# preview
prev(arr)

# create the semigroup and look at Green's relations
semigroup(arr) |> 
  green.rel()

# look at string relations
strings(arr)

Run the code above in your browser using DataLab