Skip to content

NestedEdges #

Bases: object

deletions property #

Returns a history object for each edge containing their deletion times.

Returns:

Type Description
NestedHistoryIterable

A nested iterable of history objects, one for each edge.

dst property #

Returns the destination node of the edge.

Returns:

Type Description
Node

earliest_time property #

Returns the earliest time of the edges.

Returns:

Type Description
NestedOptionEventTimeIterable

A nested iterable of EventTimes.

end property #

Gets the latest time that this NestedEdges is valid.

Returns:

Type Description
OptionalEventTime

The latest time that this NestedEdges is valid or None if the NestedEdges is valid for all times.

history property #

Returns a history object for each edge containing time entries for when the edge is added or change to the edge is made.

Returns:

Type Description
NestedHistoryIterable

A nested iterable of history objects, one for each edge.

id property #

Returns all ids of the edges.

Returns:

Type Description
NestedGIDGIDIterable

latest_time property #

Returns the latest time of the edges.

Returns:

Type Description
NestedOptionEventTimeIterable

A nested iterable of EventTimes.

layer_name property #

Returns the name of the layer the edges belong to - assuming they only belong to one layer.

Returns:

Type Description
NestedArcStringIterable

layer_names property #

Returns the names of the layers the edges belong to.

Returns:

Type Description
NestedArcStringVecIterable

metadata property #

Get a view of the metadata only.

Returns:

Type Description
MetadataListList

nbr property #

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 property #

Returns all properties of the edges

Returns:

Type Description
PyNestedPropsIterable

src property #

Returns the source node of the edge.

Returns:

Type Description
Nodes

start property #

Gets the start time for rolling and expanding windows for this NestedEdges

Returns:

Type Description
OptionalEventTime

The earliest time that this NestedEdges is valid or None if the NestedEdges is valid for all times.

time property #

Returns the times of exploded edges.

Returns:

Type Description
NestedEventTimeIterable

A nested iterable of EventTimes.

Raises:

Type Description
GraphError

If a graph error occurs (e.g. the edges are not exploded).

window_size property #

Get the window size (difference between start and end) for this NestedEdges.

Returns:

Type Description
Optional[int]

__bool__() #

True if self else False

__getitem__(key) #

Return self[key].

__iter__() #

Implement iter(self).

__len__() #

Return len(self).

__repr__() #

Return repr(self).

after(start) #

Create a view of the NestedEdges including all events after start (exclusive).

Parameters:

Name Type Description Default
start TimeInput

The start time of the window.

required

Returns:

Type Description
NestedEdges

at(time) #

Create a view of the NestedEdges including all events at time.

Parameters:

Name Type Description Default
time TimeInput

The time of the window.

required

Returns:

Type Description
NestedEdges

before(end) #

Create a view of the NestedEdges including all events before end (exclusive).

Parameters:

Name Type Description Default
end TimeInput

The end time of the window.

required

Returns:

Type Description
NestedEdges

collect() #

Collect all edges into a list

Returns:

Type Description
list[list[Edges]]

the list of edges

default_layer() #

Return a view of NestedEdges containing only the default edge layer Returns: NestedEdges: The layered view

exclude_layer(name) #

Return a view of NestedEdges containing all layers except the excluded name Errors if any of the layers do not exist.

Parameters:

Name Type Description Default
name str

layer name that is excluded for the new view

required

Returns:

Type Description
NestedEdges

The layered view

exclude_layers(names) #

Return a view of NestedEdges containing all layers except the excluded names Errors if any of the layers do not exist.

Parameters:

Name Type Description Default
names list[str]

list of layer names that are excluded for the new view

required

Returns:

Type Description
NestedEdges

The layered view

exclude_valid_layer(name) #

Return a view of NestedEdges containing all layers except the excluded name Arguments: name (str): layer name that is excluded for the new view

Returns:

Type Description
NestedEdges

The layered view

exclude_valid_layers(names) #

Return a view of NestedEdges containing all layers except the excluded names Arguments: names (list[str]): list of layer names that are excluded for the new view

Returns:

Type Description
NestedEdges

The layered view

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 Description Default
step int | str

The step size of the window.

required
alignment_unit str | 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.

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(name) #

Check if NestedEdges has the layer "name"

Parameters:

Name Type Description Default
name str

the name of the layer to check

required

Returns:

Type Description
bool

is_active() #

Check if the edges are active (there is at least one update during this time).

Returns:

Type Description
NestedBoolIterable

is_deleted() #

Check if edges are deleted.

Returns:

Type Description
NestedBoolIterable

is_self_loop() #

Check if the edges are on the same node.

Returns:

Type Description
NestedBoolIterable

is_valid() #

Check if edges are valid (i.e., not deleted).

Returns:

Type Description
NestedBoolIterable

latest() #

Create a view of the NestedEdges including all events at the latest time.

Returns:

Type Description
NestedEdges

layer(name) #

Return a view of NestedEdges containing the layer "name" Errors if the layer does not exist

Parameters:

Name Type Description Default
name str

then name of the layer.

required

Returns:

Type Description
NestedEdges

The layered view

layers(names) #

Return a view of NestedEdges containing all layers names Errors if any of the layers do not exist.

Parameters:

Name Type Description Default
names list[str]

list of layer names for the new view

required

Returns:

Type Description
NestedEdges

The layered view

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 Description Default
window int | str

The size of the window.

required
step int | str | None

The step size of the window. step defaults to window.

None
alignment_unit str | 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.

None

Returns:

Type Description
WindowSet

A WindowSet object.

shrink_end(end) #

Set the end of the window to the smaller of end and self.end()

Parameters:

Name Type Description Default
end TimeInput

the new end time of the window

required

Returns: NestedEdges:

shrink_start(start) #

Set the start of the window to the larger of start and self.start()

Parameters:

Name Type Description Default
start TimeInput

the new start time of the window

required

Returns:

Type Description
NestedEdges

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 Description Default
start TimeInput

the new start time for the window

required
end TimeInput

the new end time for the window

required

Returns:

Type Description
NestedEdges

snapshot_at(time) #

Create a view of the NestedEdges 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 Description Default
time TimeInput

The time of the window.

required

Returns:

Type Description
NestedEdges

snapshot_latest() #

Create a view of the NestedEdges 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
NestedEdges

valid_layers(names) #

Return a view of NestedEdges containing all layers names Any layers that do not exist are ignored

Parameters:

Name Type Description Default
names list[str]

list of layer names for the new view

required

Returns:

Type Description
NestedEdges

The layered view

window(start, end) #

Create a view of the NestedEdges including all events between start (inclusive) and end (exclusive)

Parameters:

Name Type Description Default
start TimeInput

The start time of the window.

required
end TimeInput

The end time of the window.

required

Returns:

Type Description
NestedEdges