phenotypic.analysis.PersistencePairsResult#
- class phenotypic.analysis.PersistencePairsResult(birth_values: tuple[ndarray[tuple[Any, ...], dtype[float64]], ndarray[tuple[Any, ...], dtype[float64]]], death_values: tuple[ndarray[tuple[Any, ...], dtype[float64]], ndarray[tuple[Any, ...], dtype[float64]]], lifetimes: tuple[ndarray[tuple[Any, ...], dtype[float64]], ndarray[tuple[Any, ...], dtype[float64]]], birth_cells: tuple[ndarray[tuple[Any, ...], dtype[int64]], ndarray[tuple[Any, ...], dtype[int64]]], death_cells: tuple[ndarray[tuple[Any, ...], dtype[int64]], ndarray[tuple[Any, ...], dtype[int64]]], essential_cells: tuple[ndarray[tuple[Any, ...], dtype[int64]], ndarray[tuple[Any, ...], dtype[int64]]], filtration: Literal['sublevel', 'superlevel'])[source]#
Bases:
objectCubical-persistence intervals and their top-cell representatives.
Each tuple contains exactly two arrays, indexed by homology dimension
0and1. Regular pairs retain GUDHI’s source order and essential pairs are appended. Essential intervals use(-1, -1)as their death coordinate.- Parameters:
birth_values (tuple[ndarray[tuple[Any, ...], dtype[float64]], ndarray[tuple[Any, ...], dtype[float64]]])
death_values (tuple[ndarray[tuple[Any, ...], dtype[float64]], ndarray[tuple[Any, ...], dtype[float64]]])
lifetimes (tuple[ndarray[tuple[Any, ...], dtype[float64]], ndarray[tuple[Any, ...], dtype[float64]]])
birth_cells (tuple[ndarray[tuple[Any, ...], dtype[int64]], ndarray[tuple[Any, ...], dtype[int64]]])
death_cells (tuple[ndarray[tuple[Any, ...], dtype[int64]], ndarray[tuple[Any, ...], dtype[int64]]])
essential_cells (tuple[ndarray[tuple[Any, ...], dtype[int64]], ndarray[tuple[Any, ...], dtype[int64]]])
filtration (Literal['sublevel', 'superlevel'])
- birth_values#
Birth intensities in the input image’s coordinates.
- Type:
tuple[numpy.ndarray[tuple[Any, …], numpy.dtype[numpy.float64]], numpy.ndarray[tuple[Any, …], numpy.dtype[numpy.float64]]]
- death_values#
Death intensities, including signed infinity for essential intervals.
- Type:
tuple[numpy.ndarray[tuple[Any, …], numpy.dtype[numpy.float64]], numpy.ndarray[tuple[Any, …], numpy.dtype[numpy.float64]]]
- lifetimes#
Nonnegative persistence lifetimes.
- Type:
tuple[numpy.ndarray[tuple[Any, …], numpy.dtype[numpy.float64]], numpy.ndarray[tuple[Any, …], numpy.dtype[numpy.float64]]]
- birth_cells#
Birth top cells as
(row, column)coordinates.- Type:
tuple[numpy.ndarray[tuple[Any, …], numpy.dtype[numpy.int64]], numpy.ndarray[tuple[Any, …], numpy.dtype[numpy.int64]]]
- death_cells#
Death top cells, or
(-1, -1)for essential intervals.- Type:
tuple[numpy.ndarray[tuple[Any, …], numpy.dtype[numpy.int64]], numpy.ndarray[tuple[Any, …], numpy.dtype[numpy.int64]]]
- essential_cells#
Birth coordinates for essential intervals only.
- Type:
tuple[numpy.ndarray[tuple[Any, …], numpy.dtype[numpy.int64]], numpy.ndarray[tuple[Any, …], numpy.dtype[numpy.int64]]]
- filtration#
The selected
"sublevel"or"superlevel"filtration.- Type:
Literal[‘sublevel’, ‘superlevel’]
Note
The dataclass fields are frozen, but the NumPy arrays remain mutable.
Methods
__init__Attributes
- birth_values: tuple[ndarray[tuple[Any, ...], dtype[float64]], ndarray[tuple[Any, ...], dtype[float64]]]#
- death_values: tuple[ndarray[tuple[Any, ...], dtype[float64]], ndarray[tuple[Any, ...], dtype[float64]]]#
- lifetimes: tuple[ndarray[tuple[Any, ...], dtype[float64]], ndarray[tuple[Any, ...], dtype[float64]]]#