Extract node degree¶
network • graph • centrality
Calculate network node degrees.
Calculates the degree centrality of each node in the network, i.e. the number of each node's incoming and/or outgoing connections.
Usage¶
The following are the step's expected inputs and outputs and their specific types.
extract_node_degree(
targets: list[number],
*weights: list[number],
{
"param": value
}
) -> (degree: number)
where the object {"param": value}
is optional in most cases and if present may contain any of the parameters described in the
corresponding section below.
Example¶
E.g. in a network of twitter accounts, where a directed link between nodes A and B indicates the number of times A has retweeted B, the following calculates the total number of retweets each account has received: Since in the example network links A→B and B→A can be different, we indicate that we want to interpret the network as directed. And since each link's weight is the number of retweets, we pass the retweets weight as the weights column. Keep in mind that both columns contain lists of numbers for each row.
extract_node_degree(ds.targets, ds.retweets, {
"mode": "in",
"loops": false,
"directed": true
}) -> (ds.keywords)
Inputs¶
targets: column:list[number]
A column containing link targets. Source is implied in the index.
*weights: column:list[number]
An optional column containing link weights.
Outputs¶
degree: column:number
Column containing the number of incoming, outgoing or all connections for each row/node in the dataset.
Parameters¶
mode: string = "all"
Which node connections to count. Whether to
in
: count only a node's incoming linksout
: count only a node's outgoing linksall
/both
count both incoming and outgoing links.
Must be one of:
"all"
,
"out"
,
"in"
,
"both"
directed: boolean = False
Whether the links are directed or not.
loops: boolean
Whether loops will be counted. Loops are links of nodes to themselves.