Closed SinsBre closed 1 week ago
Some minimal reproductions
import graphistry
import pandas as pd
from graphistry import n, e_forward, e_reverse, e_undirected, is_in, gt
edf = pd.DataFrame({
's': ['a1', 'b3', 'b3'],
'd': ['b3', 'b3', 'c1']
})
g = graphistry.edges(edf, 's', 'd').materialize_nodes().get_degrees()
where
id degree_in degree_out degree
0 a1 0 1 1
1 b3 2 2 4
2 c1 1 0 1
Then unexpected output:
g2 = (g.get_degrees()
.chain([
n({'degree': gt(1)}),
e_undirected(),
n({'degree': gt(1)})
])
)
=>
id degree degree_in degree_out
0 b3 4 2 2
1 a1 1 0 1
We don't expect edge (a1)->(b3)
as (a1 {degree: 1})
s d
0 a1 b3
1 b3 b3
@SinsBre published as 0.34.5 -- lmk if still happening
I added a test case on a minimal dataset with the same basic query structure, among others: https://github.com/graphistry/pygraphistry/blob/ecea21df3fff4bd4fadcf7f51add1c45ac0df3d7/graphistry/tests/compute/test_chain.py#L383
the bigger dataset may have more interesting shapes going on, so am curious
Describe the bug
GFQL not filtering on degrees
To Reproduce Code, including data, than can be run without editing:
Expected behavior Should only return nodes with degree gt 1
Actual behavior It is not filtering out based on degree.
Graphistry GPU server environment
AWS - 2.40.74
Additional context
Contact for datasample