Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[gpuCI] Auto-merge branch-0.12 to branch-0.13 [skip ci] #683

Merged
merged 36 commits into from
Jan 25, 2020
Merged
Show file tree
Hide file tree
Changes from 17 commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
e9d64d1
multi column renumbering changes for python graph structure
Iroy30 Jan 14, 2020
97106a8
use cudf pandas version
trxcllnt Jan 16, 2020
b7e1b83
changelog
trxcllnt Jan 16, 2020
5fc0670
style and Changelog edits
Iroy30 Jan 17, 2020
f11d359
Merge branch 'branch-0.12' into fix/use-cudf-pandas
afender Jan 17, 2020
a8deb6a
nstart renumbering edit
Iroy30 Jan 17, 2020
f825f61
Merge branch 'branch-0.12' of https://github.com/rapidsai/cugraph int…
Iroy30 Jan 17, 2020
ee48cbd
edit changelog
Iroy30 Jan 17, 2020
2aaaf3f
update algos to unrenumber multiple columns
Iroy30 Jan 21, 2020
294c5b0
Merge pull request #33 from rapidsai/branch-0.12
afender Jan 22, 2020
eef3c63
add utility function
Iroy30 Jan 22, 2020
0b360cc
style changes
Iroy30 Jan 22, 2020
818c64d
Merge branch 'branch-0.12' into accept_multi-column_ids
Iroy30 Jan 22, 2020
8469d48
Update graph.py
Iroy30 Jan 22, 2020
4eb1597
Update issue templates
BradReesWork Jan 22, 2020
05cabe3
Merge pull request #666 from Iroy30/accept_multi-column_ids
BradReesWork Jan 22, 2020
553c706
Merge pull request #670 from trxcllnt/fix/use-cudf-pandas
BradReesWork Jan 22, 2020
873b4cf
removed add_column, close #645
afender Jan 23, 2020
5d29b11
removed drop_column, close #644
afender Jan 23, 2020
8b3c751
changelog
afender Jan 23, 2020
ba3169c
style
afender Jan 23, 2020
3361ecd
Merge branch 'branch-0.12' into depreciated_cudf_calls
afender Jan 23, 2020
c80a9e1
avoid deepcopy
Iroy30 Jan 23, 2020
081d763
add changelog
Iroy30 Jan 23, 2020
9856532
Merge branch 'branch-0.12' into avoid_deepcopy
Iroy30 Jan 23, 2020
ad950d1
added RMM
afender Jan 23, 2020
a69de01
changelog
afender Jan 23, 2020
dbb60cd
style
afender Jan 23, 2020
96ec772
Merge branch 'branch-0.12' into balanced_cut_fix
afender Jan 23, 2020
e69cb68
fixed pr number
afender Jan 23, 2020
382a713
added inplace parameter
afender Jan 23, 2020
19b66d2
Merge pull request #685 from Iroy30/avoid_deepcopy
BradReesWork Jan 23, 2020
cf13d1a
Merge remote-tracking branch 'origin/depreciated_cudf_calls' into dep…
afender Jan 23, 2020
00c8da6
Merge pull request #686 from afender/balanced_cut_fix
BradReesWork Jan 23, 2020
62487b8
Merge branch 'branch-0.12' into depreciated_cudf_calls
BradReesWork Jan 23, 2020
f9d9bbc
Merge pull request #684 from afender/depreciated_cudf_calls
BradReesWork Jan 23, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions .github/ISSUE_TEMPLATE/enhancement-request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
name: Enhancement request
about: 'Suggest an improveement to a feature '
title: "[ENH]"
labels: "? - Needs Triage, Enhancement"
assignees: ''

---

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
10 changes: 10 additions & 0 deletions .github/ISSUE_TEMPLATE/question.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
name: Question
about: Ask a Question
title: "[QST]"
labels: "? - Needs Triage, question"
assignees: ''

---

Ask a question that could be converted into a feature or enhancement
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,17 @@
- PR #660 enable auto renumbering
- PR #664 Added support for Louvain early termination.
- PR #667 Drop `cython` from run requirements in conda recipe
- PR #666 Incorporate multicolumn renumbering in python graph class for Multi(Di)Graph

## Bug Fixes
- PR #634 renumber vertex ids passed in analytics
- PR #649 Change variable names in wjaccard and woverlap to avoid exception
- PR #651 fix cudf error in katz wrapper and test nstart
- PR #663 Replaced use of cudf._lib.gdf_dtype_from_value based on cudf refactoring
- PR #670 Use cudf pandas version
- PR #672 fix snmg pagerank based on cudf Buffer changes
- PR #600 Balanced cut fix
- PR #681 fix column length mismatch cudf issue

# cuGraph 0.11.0 (11 Dec 2019)

Expand Down
1 change: 0 additions & 1 deletion conda/environments/cugraph_dev_cuda10.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ dependencies:
- cudatoolkit=10.0
- cmake>=3.12
- python>=3.6,<3.8
- pandas>=0.24.2,<0.25
- notebook>=0.5.0
- boost
- cython>=0.29,<0.30
Expand Down
1 change: 0 additions & 1 deletion conda/environments/cugraph_dev_cuda101.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ dependencies:
- cudatoolkit=10.1
- cmake>=3.12
- python>=3.6,<3.8
- pandas>=0.24.2,<0.25
- notebook>=0.5.0
- boost
- cython>=0.29,<0.30
Expand Down
1 change: 0 additions & 1 deletion conda/environments/cugraph_dev_cuda92.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ dependencies:
- cudatoolkit=9.2
- cmake>=3.12
- python>=3.6,<3.8
- pandas>=0.24.2,<0.25
- notebook>=0.5.0
- boost
- cython>=0.29,<0.30
Expand Down
3 changes: 2 additions & 1 deletion python/cugraph/centrality/katz_centrality_wrapper.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ cimport cugraph.centrality.katz_centrality as c_katz
from cugraph.structure.graph cimport *
from cugraph.structure import graph_wrapper
from cugraph.utilities.column_utils cimport *
from cugraph.utilities.unrenumber import unrenumber
from libcpp cimport bool
from libc.stdint cimport uintptr_t
from libc.stdlib cimport calloc, malloc, free
Expand Down Expand Up @@ -85,6 +86,6 @@ def katz_centrality(input_graph, alpha=0.1, max_iter=100, tol=1.0e-5, nstart=Non
c_katz.katz_centrality(g, &c_katz_centrality_col, alpha, max_iter, tol, has_guess, normalized)

if input_graph.renumbered:
df['vertex']=input_graph.edgelist.renumber_map[df['vertex']]
df = unrenumber(input_graph.edgelist.renumber_map, df, 'vertex')

return df
8 changes: 5 additions & 3 deletions python/cugraph/community/ecg_wrapper.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ cimport cugraph.community.ecg as c_ecg
from cugraph.structure.graph cimport *
from cugraph.structure import graph_wrapper
from cugraph.utilities.column_utils cimport *
from cugraph.utilities.unrenumber import unrenumber
from libcpp cimport bool
from libc.stdint cimport uintptr_t
from libc.stdlib cimport calloc, malloc, free
Expand Down Expand Up @@ -58,8 +59,6 @@ def ecg(input_graph, min_weight=.05, ensemble_size=16):
df['vertex'] = cudf.Series(np.zeros(num_verts, dtype=np.int32))
cdef gdf_column c_index_col = get_gdf_column_view(df['vertex'])
g.adjList.get_vertex_identifiers(&c_index_col)
if input_graph.renumbered:
df['vertex'] = input_graph.edgelist.renumber_map[df['vertex']]

df['partition'] = cudf.Series(np.zeros(num_verts, dtype=np.int32))
cdef uintptr_t c_ecg_ptr = get_column_data_ptr(df['partition']._column)
Expand All @@ -69,5 +68,8 @@ def ecg(input_graph, min_weight=.05, ensemble_size=16):
else:
c_ecg.ecg[int32_t, double] (<Graph*>g, min_weight, ensemble_size, <int32_t*>c_ecg_ptr)

if input_graph.renumbered:
df = unrenumber(input_graph.edgelist.renumber_map, df, 'vertex')

return df


3 changes: 2 additions & 1 deletion python/cugraph/community/louvain_wrapper.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ cimport cugraph.community.louvain as c_louvain
from cugraph.structure.graph cimport *
from cugraph.structure import graph_wrapper
from cugraph.utilities.column_utils cimport *
from cugraph.utilities.unrenumber import unrenumber
from libcpp cimport bool
from libc.stdint cimport uintptr_t
from libc.stdlib cimport calloc, malloc, free
Expand Down Expand Up @@ -97,7 +98,7 @@ def louvain(input_graph, max_iter=100):


if input_graph.renumbered:
df['vertex'] = input_graph.edgelist.renumber_map[df['vertex']]
df = unrenumber(input_graph.edgelist.renumber_map, df, 'vertex')

if single_precision:
return df, <double>final_modularity_single_precision
Expand Down
5 changes: 3 additions & 2 deletions python/cugraph/community/spectral_clustering_wrapper.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ from cugraph.community.spectral_clustering cimport *
from cugraph.structure.graph cimport *
from cugraph.structure import graph_wrapper
from cugraph.utilities.column_utils cimport *
from cugraph.utilities.unrenumber import unrenumber
from libcpp cimport bool
from libc.stdint cimport uintptr_t
from libc.stdlib cimport calloc, malloc, free
Expand Down Expand Up @@ -85,7 +86,7 @@ def spectralBalancedCutClustering(input_graph,


if input_graph.renumbered:
df['vertex'] = input_graph.edgelist.renumber_map[df['vertex']]
df = unrenumber(input_graph.edgelist.renumber_map, df, 'vertex')

return df

Expand Down Expand Up @@ -139,7 +140,7 @@ def spectralModularityMaximizationClustering(input_graph,


if input_graph.renumbered:
df['vertex'] = input_graph.edgelist.renumber_map[df['vertex']]
df = unrenumber(input_graph.edgelist.renumber_map, df, 'vertex')

return df

Expand Down
3 changes: 2 additions & 1 deletion python/cugraph/cores/core_number_wrapper.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ cimport cugraph.cores.core_number as c_core
from cugraph.structure.graph cimport *
from cugraph.structure import graph_wrapper
from cugraph.utilities.column_utils cimport *
from cugraph.utilities.unrenumber import unrenumber
from libcpp cimport bool
from libc.stdint cimport uintptr_t
from libc.stdlib cimport calloc, malloc, free
Expand Down Expand Up @@ -68,6 +69,6 @@ def core_number(input_graph):
c_core.core_number(g, &c_core_number_col)

if input_graph.renumbered:
df['vertex'] = input_graph.edgelist.renumber_map[df['vertex']]
df = unrenumber(input_graph.edgelist.renumber_map, df, 'vertex')

return df
13 changes: 8 additions & 5 deletions python/cugraph/link_analysis/pagerank_wrapper.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
cimport cugraph.link_analysis.pagerank as c_pagerank
from cugraph.structure.graph cimport *
from cugraph.utilities.column_utils cimport *
from cugraph.utilities.unrenumber import unrenumber
from libcpp cimport bool
from libc.stdint cimport uintptr_t
from libc.stdlib cimport calloc, malloc, free
Expand Down Expand Up @@ -66,10 +67,11 @@ def pagerank(input_graph, alpha=0.85, personalization=None, max_iter=100, tol=1.
if len(nstart) != num_verts:
raise ValueError('nstart must have initial guess for all vertices')
if input_graph.renumbered is True:
renumber_series = cudf.Series(input_graph.edgelist.renumber_map.index,
index=input_graph.edgelist.renumber_map, dtype=np.int32)
vertex_renumbered = renumber_series.loc[nstart['vertex']]
df['pagerank'][vertex_renumbered] = nstart['values']
renumber_df = cudf.DataFrame()
renumber_df['map'] = input_graph.edgelist.renumber_map
renumber_df['id'] = input_graph.edgelist.renumber_map.index.astype(np.int32)
guess = nstart.merge(renumber_df, left_on='vertex', right_on='map', how='left').drop('map')
df['pagerank'][guess['id']] = guess['values']
else:
df['pagerank'][nstart['vertex']] = nstart['values']
has_guess = <bool> 1
Expand Down Expand Up @@ -106,5 +108,6 @@ def pagerank(input_graph, alpha=0.85, personalization=None, max_iter=100, tol=1.

g.transposedAdjList.get_vertex_identifiers(&c_identifier)
if input_graph.renumbered:
df['vertex'] = input_graph.edgelist.renumber_map[df['vertex']]
df = unrenumber(input_graph.edgelist.renumber_map, df, 'vertex')

return df
13 changes: 9 additions & 4 deletions python/cugraph/link_prediction/jaccard_wrapper.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -108,11 +108,16 @@ def jaccard(input_graph, vertex_pair=None):
g.adjList.get_source_indices(&c_src_index_col)

df['destination'] = cudf.Series(dest_data)
df['jaccard_coeff'] = result

if input_graph.renumbered:
df['source'] = input_graph.edgelist.renumber_map[df['source']].reset_index().drop('index')
df['destination'] = input_graph.edgelist.renumber_map[df['destination']].reset_index().drop('index')

df['jaccard_coeff'] = result
if isinstance(input_graph.edgelist.renumber_map, cudf.DataFrame):
unrenumered_df_ = df.merge(input_graph.edgelist.renumber_map, left_on='source', right_on='id', how='left').drop(['id', 'source'])
unrenumered_df = unrenumered_df_.merge(input_graph.edgelist.renumber_map, left_on='destination', right_on='id', how='left').drop(['id', 'destination'])
cols = unrenumered_df.columns
df = unrenumered_df[[cols[1:], cols[0]]]
else:
df['source'] = input_graph.edgelist.renumber_map[df['source']].reset_index().drop('index')
df['destination'] = input_graph.edgelist.renumber_map[df['destination']].reset_index().drop('index')

return df
13 changes: 9 additions & 4 deletions python/cugraph/link_prediction/overlap_wrapper.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -110,11 +110,16 @@ def overlap(input_graph, vertex_pair=None):
g.adjList.get_source_indices(&c_src_index_col);

df['destination'] = cudf.Series(dest_data)
df['overlap_coeff'] = result

if input_graph.renumbered:
df['source'] = input_graph.edgelist.renumber_map[df['source']].reset_index().drop('index')
df['destination'] = input_graph.edgelist.renumber_map[df['destination']].reset_index().drop('index')

df['overlap_coeff'] = result
if isinstance(input_graph.edgelist.renumber_map, cudf.DataFrame):
unrenumered_df_ = df.merge(input_graph.edgelist.renumber_map, left_on='source', right_on='id', how='left').drop(['id', 'source'])
unrenumered_df = unrenumered_df_.merge(input_graph.edgelist.renumber_map, left_on='destination', right_on='id', how='left').drop(['id', 'destination'])
cols = unrenumered_df.columns
df = unrenumered_df[[cols[1:], cols[0]]]
else:
df['source'] = input_graph.edgelist.renumber_map[df['source']].reset_index().drop('index')
df['destination'] = input_graph.edgelist.renumber_map[df['destination']].reset_index().drop('index')

return df
13 changes: 9 additions & 4 deletions python/cugraph/link_prediction/wjaccard_wrapper.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -113,11 +113,16 @@ def jaccard_w(input_graph, weights_arr, vertex_pair=None):
g.adjList.get_source_indices(&c_index_col);

df['destination'] = cudf.Series(dest_data)
df['jaccard_coeff'] = result

if input_graph.renumbered:
df['source'] = input_graph.edgelist.renumber_map[df['source']].reset_index().drop('index')
df['destination'] = input_graph.edgelist.renumber_map[df['destination']].reset_index().drop('index')

df['jaccard_coeff'] = result
if isinstance(input_graph.edgelist.renumber_map, cudf.DataFrame):
unrenumered_df_ = df.merge(input_graph.edgelist.renumber_map, left_on='source', right_on='id', how='left').drop(['id', 'source'])
unrenumered_df = unrenumered_df_.merge(input_graph.edgelist.renumber_map, left_on='destination', right_on='id', how='left').drop(['id', 'destination'])
cols = unrenumered_df.columns
df = unrenumered_df[[cols[1:], cols[0]]]
else:
df['source'] = input_graph.edgelist.renumber_map[df['source']].reset_index().drop('index')
df['destination'] = input_graph.edgelist.renumber_map[df['destination']].reset_index().drop('index')

return df
13 changes: 9 additions & 4 deletions python/cugraph/link_prediction/woverlap_wrapper.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -113,11 +113,16 @@ def overlap_w(input_graph, weights_arr, vertex_pair=None):
g.adjList.get_source_indices(&c_index_col);

df['destination'] = cudf.Series(dest_data)
df['overlap_coeff'] = result

if input_graph.renumbered:
df['source'] = input_graph.edgelist.renumber_map[df['source']].reset_index().drop('index')
df['destination'] = input_graph.edgelist.renumber_map[df['destination']].reset_index().drop('index')

df['overlap_coeff'] = result
if isinstance(input_graph.edgelist.renumber_map, cudf.DataFrame):
unrenumered_df_ = df.merge(input_graph.edgelist.renumber_map, left_on='source', right_on='id', how='left').drop(['id', 'source'])
unrenumered_df = unrenumered_df_.merge(input_graph.edgelist.renumber_map, left_on='destination', right_on='id', how='left').drop(['id', 'destination'])
cols = unrenumered_df.columns
df = unrenumered_df[[cols[1:], cols[0]]]
else:
df['source'] = input_graph.edgelist.renumber_map[df['source']].reset_index().drop('index')
df['destination'] = input_graph.edgelist.renumber_map[df['destination']].reset_index().drop('index')

return df
44 changes: 35 additions & 9 deletions python/cugraph/structure/graph.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
from cugraph.structure import graph_wrapper
from cugraph.structure.symmetrize import symmetrize
from cugraph.structure.renumber import renumber as rnb
from cugraph.structure.renumber import renumber_from_cudf as multi_rnb
import cudf
import numpy as np
import warnings
Expand Down Expand Up @@ -83,6 +84,8 @@ def __init__(self, m_graph=None, edge_attr=None, symmetrized=False,
source='src',
destination='dst',
edge_attr=edge_attr)
self.renumbered = m_graph.renumbered
self.edgelist.renumber_map = m_graph.edgelist.renumber_map
else:
msg = "Graph can be initialized using MultiGraph\
and DiGraph can be initialized using MultiDiGraph"
Expand Down Expand Up @@ -146,8 +149,6 @@ def from_cudf_edgelist(self, input_df, source='source',

if self.edgelist is not None or self.adjlist is not None:
raise Exception('Graph already has values')
source_col = input_df[source]
dest_col = input_df[destination]
if self.multi:
if type(edge_attr) is not list:
raise Exception('edge_attr should be a list of column names')
Expand All @@ -160,9 +161,20 @@ def from_cudf_edgelist(self, input_df, source='source',
value_col = None
renumber_map = None
if renumber:
source_col, dest_col, renumber_map = rnb(input_df[source],
input_df[destination])
if type(source) is list and type(destination) is list:
source_col, dest_col, renumber_map = multi_rnb(input_df,
source,
destination)
else:
source_col, dest_col, renumber_map = rnb(input_df[source],
input_df[destination])
self.renumbered = True
else:
if type(source) is list and type(destination) is list:
raise Exception('set renumber to True for multi column ids')
else:
source_col = input_df[source]
dest_col = input_df[destination]
if not self.symmetrized and not self.multi:
if value_col is not None:
source_col, dest_col, value_col = symmetrize(source_col,
Expand Down Expand Up @@ -207,11 +219,25 @@ def view_edge_list(self):
graph_wrapper.view_edge_list(self)
edgelist_df = self.edgelist.edgelist_df
if self.renumbered:
df = cudf.DataFrame()
df['src'] = self.edgelist.renumber_map[edgelist_df['src']].\
reset_index().drop('index')
df['dst'] = self.edgelist.renumber_map[edgelist_df['dst']].\
reset_index().drop('index')
if isinstance(self.edgelist.renumber_map, cudf.DataFrame):
df = cudf.DataFrame()
ncols = len(self.edgelist.edgelist_df) - 2
unrnb_df_ = edgelist_df.merge(self.edgelist.renumber_map,
left_on='src', right_on='id',
how='left').drop(['id', 'src'])
unrnb_df = unrnb_df_.merge(self.edgelist.renumber_map,
left_on='dst', right_on='id',
how='left').drop(['id', 'dst'])
cols = unrnb_df.columns
df = unrnb_df[[cols[ncols:], cols[0:ncols]]]
else:
df = cudf.DataFrame()
for c in edgelist_df.columns:
if c in ['src', 'dst']:
df[c] = self.edgelist.renumber_map[edgelist_df[c]].\
reset_index().drop('index')
else:
df[c] = edgelist_df[c]
return df
else:
return edgelist_df
Expand Down
2 changes: 1 addition & 1 deletion python/cugraph/tests/test_pagerank.py
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ def networkx_call(M, max_iter, tol, alpha, personalization_perc):
TOLERANCE = [1.0e-06]
ALPHA = [0.85]
PERSONALIZATION_PERC = [0, 10, 50]
HAS_GUESS = [0]
HAS_GUESS = [0, 1]


# Test all combinations of default/managed and pooled/non-pooled allocation
Expand Down
12 changes: 10 additions & 2 deletions python/cugraph/traversal/bfs_wrapper.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,15 @@ def bfs(input_graph, start, directed=True):
c_bfs.bfs[int](g, <int*>c_distance_ptr, <int*>c_predecessors_ptr, <int>start)

if input_graph.renumbered:
df['vertex'] = input_graph.edgelist.renumber_map[df['vertex']]
df['predecessor'][df['predecessor']>-1] = input_graph.edgelist.renumber_map[df['predecessor'][df['predecessor']>-1]]
if isinstance(input_graph.edgelist.renumber_map, cudf.DataFrame):
n_cols = len(input_graph.edgelist.renumber_map.columns) - 1
unrenumered_df_ = df.merge(input_graph.edgelist.renumber_map, left_on='vertex', right_on='id', how='left').drop(['id', 'vertex'])
unrenumered_df = unrenumered_df_.merge(input_graph.edgelist.renumber_map, left_on='predecessor', right_on='id', how='left').drop(['id', 'predecessor'])
unrenumered_df.columns = ['distance']+['vertex_'+str(i) for i in range(n_cols)]+['predecessor_'+str(i) for i in range(n_cols)]
cols = unrenumered_df.columns
df = unrenumered_df[[cols[1:n_cols+1], cols[0], cols[n_cols:]]]
else:
df['vertex'] = input_graph.edgelist.renumber_map[df['vertex']]
df['predecessor'][df['predecessor']>-1] = input_graph.edgelist.renumber_map[df['predecessor'][df['predecessor']>-1]]

return df
Loading