tie_in_community() assigns each tie to a link community.
Most community detection algorithms partition the nodes of a network, so that each node belongs to one community only. Link communities (Ahn et al. 2010) partition the ties instead. Each tie belongs to one community, but a node belongs to every community that one of its ties does, so the communities of nodes can overlap where the communities of ties do not.
tie_in_community(.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().
A tie_member character vector the length of the ties in the network,
of group memberships "A", "B", etc for each tie,
named by the pair of nodes each tie joins.
Two ties that share a node are similar to the extent that the nodes at their other ends have the same neighbours. This is the Jaccard similarity of those two nodes' inclusive neighbourhoods, that is each node's neighbours together with itself. Ties that share no node have no similarity.
The ties are then clustered hierarchically by single linkage,
and the tree is cut where the partition density is highest.
See net_by_linkdensity() for this density.
The algorithm reads only which nodes are tied.
Ties between the same two nodes, whatever their direction,
are placed in the same community, and tie weights are not used.
A tie from a node to itself joins no two nodes, and returns NA.
A community is a cohesive subgroup, and negative ties do not carry
cohesion. Where the network is signed, only its positive ties are
clustered, and negative ties return NA.
Use manynet::to_unsigned() first to control this yourself.
Every tie is compared with every other tie, so the time and memory needed grow with the square of the number of ties. This is practical up to a few thousand ties.
Ahn, Yong-Yeol, James P. Bagrow, and Sune Lehmann. 2010. "Link communities reveal multiscale complexity in networks". Nature 466(7307): 761-764. doi:10.1038/nature09182
Other memberships:
member_brokerage,
member_cliques,
member_community,
member_community_hier,
member_community_modular,
member_community_partition,
member_community_spread,
member_components,
member_core,
member_diffusion,
member_equivalence
Other tie:
mark_dyads,
mark_select_tie,
mark_ties,
mark_triangles,
measure_broker_tie,
measure_central_tie_between,
measure_central_tie_close,
measure_central_tie_degree,
measure_central_tie_eigen
Other community:
member_community,
member_community_hier,
member_community_modular,
member_community_partition,
member_community_spread
tie_in_community(ison_adolescents)
#> 4 groups
#> `Betty-Sue` `Sue-Alice` `Alice-Jane` `Sue-Dale` `Alice-Dale` `Jane-Dale`
#> 1 A B B B B B
#> # ... and 4 more values from this nodeset. Use `print_all(...)` to print all values.