node_x_brokerage() returns the Gould-Fernandez brokerage roles played by nodes in a network.

node_x_brokerage(.data, membership, standardized = FALSE)

Arguments

.data

A network object of class stocnet, igraph, tbl_graph, network, or similar. Internally any of these will be coerced to an efficient implementation. For more information on possible coercions, see e.g. manynet::as_stocnet().

membership

A character string naming an existing node attribute in the network, or a categorical vector of the same length as the number of nodes in the network where each element indicates the group membership of the corresponding node. While this may often be a vector created using node_in_*() functions, it can be any character vector that assigns nodes to groups or categories.

standardized

Logical scalar. Where TRUE, the counts are returned as z-scores against a null model rather than as raw counts. This is a different quantity from normalized, which divides by a theoretical maximum, and from scaled, which divides by the observed maximum: a z-score says how far the count departs from what the null model expects, so it can be negative and has no fixed range. By default FALSE.

Value

A node_motif matrix with one row for each node in the network and a column for each motif type, giving the count of each motif in which each node participates. It is printed as a tibble, however, to avoid greedy printing. If the network is labelled, then the node names will be in a column named names.

Cognitive social structures

A cognitive social structure records each node's report of the ties in the whole network, in a by column that names who reported each tie. Counting every report as a tie of its own would count each tie once for every perceiver who reports it. So the functions here first combine the reports into the locally aggregated structure of Krackhardt (1987), with the intersection rule: a tie exists if both of its ends report it, and a message says so. A tie that names no reporter is kept as it is.

A tie-level function still returns one value for each report, so that the result can be added back to the network it was given. Each report takes the value of the tie that it reports. A report of a tie that is not in the aggregated structure takes NA, or FALSE for a mark. tie_is_random() is the exception, and draws among the reports.

To combine the reports in a different way, do this before the function, e.g. with manynet::to_aggregated(over = "by").

Krackhardt, David. 1987. "Cognitive social structures". Social Networks 9(2): 109-134. doi:10.1016/0378-8733(87)90009-8

References

On brokerage motifs

Gould, Roger V., and Roberto M. Fernandez. 1989. “Structures of Mediation: A Formal Approach to Brokerage in Transaction Networks.” Sociological Methodology, 19: 89-126. doi:10.2307/270949

Jasny, Lorien, and Mark Lubell. 2015. “Two-Mode Brokerage in Policy Networks.” Social Networks 41:36–47. doi:10.1016/j.socnet.2014.11.005

Examples

node_x_brokerage(ison_networkers, "Discipline")
#> # A tibble: 32 × 7
#>   names            Coordinator Itinerant Gatekeeper Representative Liaison Total
#>   <chr>                  <dbl>     <dbl>      <dbl>          <dbl>   <dbl> <dbl>
#> 1 Lin Freeman              137        28        123            138      72   498
#> 2 Doug White                 5       113         45             46     116   325
#> 3 Ev Rogers                  0         0          0              0       3     3
#> 4 Richard Alba              14         4         14             25      15    72
#> 5 Phipps Arabie              0         5          0              7      24    36
#> 6 Carol Barner-Ba…           0        17          4              3      16    40
#> # ℹ 26 more rows