Source code for rpasdt.algorithm.network_analysis
"""Network analysis utilities."""
import networkx as nx
from networkx import Graph
from rpasdt.algorithm.taxonomies import NetworkAnalysisOptionEnum
NETWORK_ANALYSIS_OPERATION_MAP = {
NetworkAnalysisOptionEnum.DENSITY: nx.density,
NetworkAnalysisOptionEnum.AVERAGE_CLUSTERING: nx.average_clustering,
NetworkAnalysisOptionEnum.SUMMARY: nx.info,
}
[docs]def compute_network_analysis(type: NetworkAnalysisOptionEnum, graph: Graph):
return NETWORK_ANALYSIS_OPERATION_MAP.get(type)(graph)