Neo4j 5.25.1
GDS 2.12
GDS Python Client 1.12
My in memory GDS graph has been build from a pandas DataFrame using the construct method of gds, so it doesn't exists and will not exists on disk, its intended for an in memory analysis only.
Here is the content of the in memory extracted from gds.graph.nodeProperty.stream
nodeId propertyValue nodeLabels
0 6335695024714629015 -0.00003
1 531768015437695177 0.00009
2 3558886278460545694 -0.00012
3 7960371801618416072 -0.00006
4 688712822280937494 0.00009
5 6445645390101772454 0.00000
6 4640442843099832304 -0.00006
7 6026970582286088324 0.00006
8 5356341080109221825 0.00003
9 1843909622001289035 0.00006
10 5984421542275516993 -0.00009
11 1113611838033320553 -0.00003
12 4162479979561917907 0.00003
When trying to run randomWalk
sourceNode = self.markov_chain_nodes['nodeId'].last()
random_walk_config = {
'sourceNodes': [sourceNode],
'walkLength': FUTURE_SIZE,
'walksPerNode': 1,
'relationshipWeightProperty': 'transition probability',
'concurrency': 4
}
future = self.gds.randomWalk.stream(self.graph, **random_walk_config)
I got this error, {message: Failed to invoke procedure gds.randomWalk.stream
: Caused by: org.neo4j.internal.kernel.api.exceptions.EntityNotFoundException: Unable to load NODE 4162479979561917907.}. But the node id clearly exist in the in memory graph
4162479979561917907
I read that I'm suppose to use gds.find_node_id to match the sourceNode, but this is an in memory graph only and will never become an on disk graph.