transf: Transform Data from-to Matrix-List Formats

transfR Documentation

Transform Data from-to Matrix-List Formats

Description

Function to transform data from/to matrix/list formats or edge list representing a network.

Usage

transf(x, type = c("toarray", "tolist", "toarray2", "toedgel"), lbs = NULL, lb2lb, valued, 
       sep, ord, sort, sym, add, adc, rm.isol, na.rm)

Arguments

x

An array or a list of pair relations.

type

Type of transformation:

  • toarray from a list of pair relations to an array format

  • tolist from a matrix to a list of pair relations

  • toarray2 from a list of pair relations to a square array

  • toedgel from arrays to edge list

lbs

(optional) Labels in the transformation.

lb2lb

(optional and logical) Is the transformation “label-to-label”?

valued

(optional and logical) Treat x as valued?

sep

(optional) Pair separator used for the pairwise relations.

ord

(optional, for "toarray") Order of the transformed array structure.

sort

(optional and logical) Sort the arrays in the output?

sym

(optional and logical, for "toarray") Symmetrize the arrays?

add

(optional) Added elements in the array's domain.

adc

(optional) Added elements in the array's codomain.

rm.isol

(optional and logical) Remove isolates in x?

na.rm

(optional and logical) Remove missing data or NAs?

Details

Option "tolist" is for transforming a matrix or an array to a list of pair elements. In case that the lb2lb is enabled in this type of transformation, then lbs must be provided, whereas the pair separator is optional. Notice that the default of lb2lb is TRUE for "toarray", while is FALSE for "tolist".

Option type "toarray" will produce a matrix from a list of pair elements, and in this case is advisable to specify the order of the structure. Three dimensional structures are supported in the transformations with all options.

Data frames are also accepted for the "tolist" option; however, in case that this information is given as a list of pair relations the output will be a square matrix.

When the transformation option is "edgel", the output is a data frame with the first two columns for the sending and receiving ties. For simple networks, these two columns are enough and for multiplex networks additional columns are for the types of tie, one for each (cf. function edgel).

Notice that for high dimensional arrays, the rel.sys function provides additional information other than the list of pair relations of the entire structure.

Value

Depending on the input data, the result is either a list of pair relations or a matrix of relations.

See Also

edgel, bundles, reduc, rel.sys

Examples

# scan the multiplication table data
s <- matrix(data=c(1, 1, 1, 3, 3, 3, 3, 3, 3), nrow=3, ncol=3, byrow=TRUE)

# transform the matrix to a list format
s |> transf(lb2lb = TRUE, lbs = c("n","m","u"))

multiplex documentation built on July 30, 2026, 5:13 p.m.