MCPcopy Create free account
hub / github.com/alibaba/graph-learn / Edges

Class Edges

graphlearn/python/data/values.py:448–593  ·  view source on GitHub ↗

As returned object of `get_next` api of `edge_sampler` , as returned object of `get_edges` of `Graph` or as in-memory object for constructing graph.

Source from the content-addressed store, hash-verified

446
447
448class Edges(Values):
449 """ As returned object of `get_next` api of `edge_sampler` ,
450 as returned object of `get_edges` of `Graph` or as in-memory object
451 for constructing graph.
452 """
453
454 def __init__(self,
455 src_ids=None,
456 src_type=None,
457 dst_ids=None,
458 dst_type=None,
459 edge_type=None,
460 edge_ids=None,
461 src_nodes=None,
462 dst_nodes=None,
463 int_attrs=None,
464 float_attrs=None,
465 string_attrs=None,
466 weights=None,
467 labels=None,
468 shape=None,
469 graph=None):
470 super(Edges, self).__init__(int_attrs=None,
471 float_attrs=None,
472 string_attrs=None,
473 weights=weights,
474 labels=labels,
475 shape=shape,
476 graph=graph)
477 if src_ids is not None:
478 src_ids = np.array(src_ids)
479 if edge_ids is not None:
480 edge_ids = np.array(edge_ids)
481 if dst_ids is not None:
482 dst_ids = np.array(dst_ids)
483
484 if shape is None:
485 if src_ids is not None:
486 self._shape = src_ids.shape
487 if edge_ids is not None:
488 self._shape = edge_ids.shape
489 else:
490 real_shape = src_ids.shape if src_ids is not None else edge_ids.shape
491 if np.prod(real_shape) == np.prod(shape):
492 self._shape = shape
493 else:
494 self._shape = real_shape[0:] if len(shape) == 1 else \
495 (int(np.prod(real_shape) / np.prod(shape[1:])), ) + shape[-1:]
496
497 self._src_ids = self._reshape(src_ids)
498 self._src_type = src_type
499 self._dst_ids = self._reshape(dst_ids)
500 self._dst_type = dst_type
501 self._edge_type = edge_type
502 self._edge_ids = self._reshape(edge_ids)
503 self._src_nodes = src_nodes
504 self._dst_nodes = dst_nodes
505

Callers 2

getMethod · 0.90
__next__Method · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected