From 73acbe48b9e256fe13c32824ff1c3f9956120daf Mon Sep 17 00:00:00 2001 From: Yassin <aliyassin4@hotmail.com> Date: Sun, 7 May 2023 02:59:53 +0200 Subject: [PATCH] Updating the utils module --- netbone/backbone.py | 2 +- netbone/compare.py | 2 +- netbone/filters.py | 2 +- netbone/measures.py | 2 +- netbone/statistical/global_threshold.py | 2 +- netbone/utils/__init__.py | 0 netbone/utils/narrate.py | 0 netbone/utils/utils.py | 24 ++++++++++++++++++++++++ 8 files changed, 29 insertions(+), 5 deletions(-) create mode 100644 netbone/utils/__init__.py create mode 100644 netbone/utils/narrate.py create mode 100644 netbone/utils/utils.py diff --git a/netbone/backbone.py b/netbone/backbone.py index 9c8437b..db6c4ad 100644 --- a/netbone/backbone.py +++ b/netbone/backbone.py @@ -1,6 +1,6 @@ import networkx as nx from pandas import DataFrame -from netbone.Utils.utils import edge_properties +from netbone.utils.utils import edge_properties class Backbone: diff --git a/netbone/compare.py b/netbone/compare.py index 61e3902..7ec623d 100644 --- a/netbone/compare.py +++ b/netbone/compare.py @@ -1,6 +1,6 @@ import pandas as pd import networkx as nx -from netbone.Utils.utils import cumulative_dist +from netbone.utils.utils import cumulative_dist from netbone.filters import threshold_filter, boolean_filter from pandas import DataFrame from scipy.stats import kstest diff --git a/netbone/filters.py b/netbone/filters.py index d159c84..b32993b 100644 --- a/netbone/filters.py +++ b/netbone/filters.py @@ -1,7 +1,7 @@ import math import networkx as nx -from netbone.Utils.utils import edge_properties +from netbone.utils.utils import edge_properties def boolean_filter(backbone, narrate=True, value=[]): if boolean_filter in backbone.filters(): data = backbone.graph diff --git a/netbone/measures.py b/netbone/measures.py index f422d92..e97bfc1 100644 --- a/netbone/measures.py +++ b/netbone/measures.py @@ -1,7 +1,7 @@ import igraph as ig import networkx as nx import numpy as np -from netbone.Utils.utils import lcc +from netbone.utils.utils import lcc from scipy.stats import entropy diff --git a/netbone/statistical/global_threshold.py b/netbone/statistical/global_threshold.py index ac082ce..38a609a 100644 --- a/netbone/statistical/global_threshold.py +++ b/netbone/statistical/global_threshold.py @@ -1,7 +1,7 @@ import networkx as nx from pandas import DataFrame from networkx import Graph,to_pandas_edgelist -from netbone.Utils.utils import edge_properties +from netbone.utils.utils import edge_properties from netbone.backbone import Backbone from netbone.filters import fraction_filter, threshold_filter def global_threshold(data): diff --git a/netbone/utils/__init__.py b/netbone/utils/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/netbone/utils/narrate.py b/netbone/utils/narrate.py new file mode 100644 index 0000000..e69de29 diff --git a/netbone/utils/utils.py b/netbone/utils/utils.py new file mode 100644 index 0000000..0f31d2c --- /dev/null +++ b/netbone/utils/utils.py @@ -0,0 +1,24 @@ +import numpy as np +import pandas as pd +import networkx as nx + + +def lcc(G): + return G.subgraph(max(nx.connected_components(G), key=len)).copy() +def cumulative_dist(name, method, values, increasing=True): + if increasing: + x = -np.sort(-np.array(values)) + else: + x = np.sort(values) + y = np.arange(1, len(x) + 1)/len(x) + + df = pd.DataFrame(index=x) + df.index.name = name + df[method] = y + return df + +def edge_properties(df): + columns = list(df.columns) + columns.remove('source') + columns.remove('target') + return columns -- GitLab