Edge
PyEdge is a Python class that represents an edge in the graph. An edge is a directed connection between two nodes.
Methods
| Method | Description |
|---|---|
after | Create a view of the Edge including all events after start (exclusive). |
at | Create a view of the Edge including all events at time. |
before | Create a view of the Edge including all events before end (exclusive). |
default_layer | Return a view of Edge containing only the default edge layer |
exclude_layer | Return a view of Edge containing all layers except the excluded name |
exclude_layers | Return a view of Edge containing all layers except the excluded names |
exclude_valid_layer | Return a view of Edge containing all layers except the excluded name |
exclude_valid_layers | Return a view of Edge containing all layers except the excluded names |
expanding | Creates a WindowSet with the given step size using an expanding window. |
explode | Explodes returns an edge object for each update within the original edge. |
explode_layers | Explode layers returns an edge object for each layer within the original edge. These new edge object contains only updates from respective layers. |
has_layer | Check if Edge has the layer "name" |
is_active | Check if the edge is currently active (has at least one update within this period). |
is_deleted | Check if the edge is currently deleted |
is_self_loop | Check if the edge is on the same node |
is_valid | Check if the edge is currently valid (i.e., not deleted) |
latest | Create a view of the Edge including all events at the latest time. |
layer | Return a view of Edge containing the layer "name" |
layers | Return a view of Edge containing all layers names |
rolling | Creates a WindowSet with the given window size and optional step using a rolling window. |
shrink_end | Set the end of the window to the smaller of end and self.end() |
shrink_start | Set the start of the window to the larger of start and self.start() |
shrink_window | Shrink both the start and end of the window (same as calling shrink_start followed by shrink_end but more efficient) |
snapshot_at | Create a view of the Edge including all events that have not been explicitly deleted at time. |
snapshot_latest | Create a view of the Edge including all events that have not been explicitly deleted at the latest time. |
valid_layers | Return a view of Edge containing all layers names |
window | Create a view of the Edge including all events between start (inclusive) and end (exclusive) |
Properties
| Property | Description |
|---|---|
deletions | Returns a history object with EventTime entries for an edge's deletion times. |
dst | Returns the destination node of the edge. |
earliest_time | Gets the earliest time of an edge. |
end | Gets the latest time that this Edge is valid. |
history | Returns a history object with EventTime entries for when an edge is added or change to an edge is made. |
id | The id of the edge. |
latest_time | Gets the latest time of an edge. |
layer_name | Gets the name of the layer this edge belongs to - assuming it only belongs to one layer. |
layer_names | Gets the names of the layers this edge belongs to. |
metadata | Gets the metadata of an edge |
nbr | Returns the node at the other end of the edge (same as dst() for out-edges and src() for in-edges) |
properties | Returns a view of the properties of the edge. |
src | Returns the source node of the edge. |
start | Gets the start time for rolling and expanding windows for this Edge |
time | Gets the time of an exploded edge. |
window_size | Get the window size (difference between start and end) for this Edge. |
Method Details
after
Signature: after(start)
Create a view of the Edge including all events after start (exclusive).
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
start | TimeInput | - | The start time of the window. |
Returns
| Type | Description |
|---|---|
| Edge |
at
Signature: at(time)
Create a view of the Edge including all events at time.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
time | TimeInput | - | The time of the window. |
Returns
| Type | Description |
|---|---|
| Edge |
before
Signature: before(end)
Create a view of the Edge including all events before end (exclusive).
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
end | TimeInput | - | The end time of the window. |
Returns
| Type | Description |
|---|---|
| Edge |
default_layer
Return a view of Edge containing only the default edge layer
Returns
| Type | Description |
|---|---|
| Edge | The layered view |
exclude_layer
Signature: exclude_layer(name)
Return a view of Edge containing all layers except the excluded name
Errors if any of the layers do not exist.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
name | str | - | layer name that is excluded for the new view |
Returns
| Type | Description |
|---|---|
| Edge | The layered view |
exclude_layers
Signature: exclude_layers(names)
Return a view of Edge containing all layers except the excluded names
Errors if any of the layers do not exist.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
names | list[str] | - | list of layer names that are excluded for the new view |
Returns
| Type | Description |
|---|---|
| Edge | The layered view |
exclude_valid_layer
Signature: exclude_valid_layer(name)
Return a view of Edge containing all layers except the excluded name
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
name | str | - | layer name that is excluded for the new view |
Returns
| Type | Description |
|---|---|
| Edge | The layered view |
exclude_valid_layers
Signature: exclude_valid_layers(names)
Return a view of Edge containing all layers except the excluded names
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
names | list[str] | - | list of layer names that are excluded for the new view |
Returns
| Type | Description |
|---|---|
| Edge | The layered view |
expanding
Signature: expanding(step, alignment_unit=None)
Creates a WindowSet with the given step size using an expanding window.
An expanding window is a window that grows by step size at each iteration.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
step | int | str | - | The step size of the window. |
alignment_unit | str | None, optional | None | If no alignment_unit is passed, aligns the start of the first window to the smallest unit of time passed to step. For example, if the step is "1 month and 1 day", the windows will be aligned on days (00:00:00 to 23:59:59). If set to "unaligned", the first window will begin at the first time event. If any other alignment unit is passed, the windows will be aligned to that unit. alignment_unit defaults to None. |
Returns
| Type | Description |
|---|---|
| WindowSet | A WindowSet object. |
explode
Explodes returns an edge object for each update within the original edge.
Returns
| Type | Description |
|---|---|
| Edges |
explode_layers
Explode layers returns an edge object for each layer within the original edge. These new edge object contains only updates from respective layers.
Returns
| Type | Description |
|---|---|
| Edges |
has_layer
Signature: has_layer(name)
Check if Edge has the layer "name"
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
name | str | - | the name of the layer to check |
Returns
| Type | Description |
|---|---|
| bool |
is_active
Check if the edge is currently active (has at least one update within this period).
Returns
| Type | Description |
|---|---|
| bool |
is_deleted
Check if the edge is currently deleted
Returns
| Type | Description |
|---|---|
| bool |
is_self_loop
Check if the edge is on the same node
Returns
| Type | Description |
|---|---|
| bool |
is_valid
Check if the edge is currently valid (i.e., not deleted)
Returns
| Type | Description |
|---|---|
| bool |
latest
Create a view of the Edge including all events at the latest time.
Returns
| Type | Description |
|---|---|
| Edge |
layer
Signature: layer(name)
Return a view of Edge containing the layer "name"
Errors if the layer does not exist
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
name | str | - | then name of the layer. |
Returns
| Type | Description |
|---|---|
| Edge | The layered view |
layers
Signature: layers(names)
Return a view of Edge containing all layers names
Errors if any of the layers do not exist.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
names | list[str] | - | list of layer names for the new view |
Returns
| Type | Description |
|---|---|
| Edge | The layered view |
rolling
Signature: rolling(window, step=None, alignment_unit=None)
Creates a WindowSet with the given window size and optional step using a rolling window.
If alignment_unit is not "unaligned" and a step larger than window is provided, some time entries
may appear before the start of the first window and/or after the end of the last window (i.e. not included in any window).
A rolling window is a window that moves forward by step size at each iteration.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
window | int | str | - | The size of the window. |
step | int | str | None, optional | None | The step size of the window. step defaults to window. |
alignment_unit | str | None, optional | None | If no alignment_unit is passed, aligns the start of the first window to the smallest unit of time passed to step (or window if no step is passed). For example, if the step is "1 month and 1 day", the first window will begin at the start of the day of the first time event. If set to "unaligned", the first window will begin at the first time event. If any other alignment unit is passed, the windows will be aligned to that unit. alignment_unit defaults to None. |
Returns
| Type | Description |
|---|---|
| WindowSet | A WindowSet object. |
shrink_end
Signature: shrink_end(end)
Set the end of the window to the smaller of end and self.end()
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
end | TimeInput | - | the new end time of the window |
Returns
| Type | Description |
|---|---|
| Edge |
shrink_start
Signature: shrink_start(start)
Set the start of the window to the larger of start and self.start()
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
start | TimeInput | - | the new start time of the window |
Returns
| Type | Description |
|---|---|
| Edge |
shrink_window
Signature: shrink_window(start, end)
Shrink both the start and end of the window (same as calling shrink_start followed by shrink_end but more efficient)
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
start | TimeInput | - | the new start time for the window |
end | TimeInput | - | the new end time for the window |
Returns
| Type | Description |
|---|---|
| Edge |
snapshot_at
Signature: snapshot_at(time)
Create a view of the Edge including all events that have not been explicitly deleted at time.
This is equivalent to before(time + 1) for Graph and at(time) for PersistentGraph
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
time | TimeInput | - | The time of the window. |
Returns
| Type | Description |
|---|---|
| Edge |
snapshot_latest
Create a view of the Edge including all events that have not been explicitly deleted at the latest time.
This is equivalent to a no-op for Graph and latest() for PersistentGraph
Returns
| Type | Description |
|---|---|
| Edge |
valid_layers
Signature: valid_layers(names)
Return a view of Edge containing all layers names
Any layers that do not exist are ignored
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
names | list[str] | - | list of layer names for the new view |
Returns
| Type | Description |
|---|---|
| Edge | The layered view |
window
Signature: window(start, end)
Create a view of the Edge including all events between start (inclusive) and end (exclusive)
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
start | TimeInput | - | The start time of the window. |
end | TimeInput | - | The end time of the window. |
Returns
| Type | Description |
|---|---|
| Edge |
Property Details
deletions
Returns a history object with EventTime entries for an edge's deletion times.
Returns
| Type | Description |
|---|---|
| History | A history object containing time entries about the edge's deletions |
dst
Returns the destination node of the edge.
Returns
| Type | Description |
|---|---|
| Node |
earliest_time
Gets the earliest time of an edge.
Returns
| Type | Description |
|---|---|
| OptionalEventTime | The earliest time of an edge |
end
Gets the latest time that this Edge is valid.
Returns
| Type | Description |
|---|---|
| OptionalEventTime | The latest time that this Edge is valid or None if the Edge is valid for all times. |
history
Returns a history object with EventTime entries for when an edge is added or change to an edge is made.
Returns
| Type | Description |
|---|---|
| History | A history object containing temporal entries about the edge |
id
The id of the edge.
Returns
| Type | Description |
|---|---|
| GID |
latest_time
Gets the latest time of an edge.
Returns
| Type | Description |
|---|---|
| OptionalEventTime | The latest time of an edge |
layer_name
Gets the name of the layer this edge belongs to - assuming it only belongs to one layer.
Returns
| Type | Description |
|---|---|
| str | The name of the layer |
layer_names
Gets the names of the layers this edge belongs to.
Returns
| Type | Description |
|---|---|
| list[str] | The name of the layer |
metadata
Gets the metadata of an edge
Returns
| Type | Description |
|---|---|
| Metadata |
nbr
Returns the node at the other end of the edge (same as dst() for out-edges and src() for in-edges)
Returns
| Type | Description |
|---|---|
| Nodes |
properties
Returns a view of the properties of the edge.
Returns
| Type | Description |
|---|---|
| Properties | Properties on the Edge. |
src
Returns the source node of the edge.
Returns
| Type | Description |
|---|---|
| Nodes |
start
Gets the start time for rolling and expanding windows for this Edge
Returns
| Type | Description |
|---|---|
| OptionalEventTime | The earliest time that this Edge is valid or None if the Edge is valid for all times. |
time
Gets the time of an exploded edge.
Returns
| Type | Description |
|---|---|
| int | The time of an exploded edge |
window_size
Get the window size (difference between start and end) for this Edge.
Returns
| Type | Description |
|---|---|
| int, optional |