Skip to content

iden.data

iden.data.generator

Contain data generator implementations.

iden.data.generator.BaseDataGenerator

Bases: Generic[T], ABC

Define the base class to generate data.

Example usage:

>>> from iden.data.generator import DataGenerator
>>> generator = DataGenerator([1, 2, 3])
>>> generator
DataGenerator(copy=False)
>>> generator.generate()
[1, 2, 3]

iden.data.generator.BaseDataGenerator.generate abstractmethod

generate() -> T

Generate data.

Returns:

Type Description
T

The generated data.

Example usage:

>>> from iden.data.generator import DataGenerator
>>> generator = DataGenerator([1, 2, 3])
>>> generator.generate()
[1, 2, 3]

iden.data.generator.DataGenerator

Bases: BaseDataGenerator[T]

Implement a simple data generator.

Parameters:

Name Type Description Default
data T

The data to return.

required
copy bool

If True, it returns a copy of the data, otherwise it always returns the same data.

False

Example usage:

>>> from iden.data.generator import DataGenerator
>>> generator = DataGenerator([1, 2, 3])
>>> generator
DataGenerator(copy=False)
>>> generator.generate()
[1, 2, 3]

iden.data.generator.is_data_generator_config

is_data_generator_config(config: dict) -> bool

Indicate if the input configuration is a configuration for a BaseDataGenerator.

This function only checks if the value of the key _target_ is valid. It does not check the other values. If _target_ indicates a function, the returned type hint is used to check the class.

Parameters:

Name Type Description Default
config dict

Specifies the configuration to check.

required

Returns:

Type Description
bool

True if the input configuration is a configuration for a BaseDataGenerator object.

Example usage:

>>> from iden.data.generator import is_data_generator_config
>>> is_data_generator_config({"_target_": "iden.data.generator.DataGenerator"})
True

iden.data.generator.setup_data_generator

setup_data_generator(
    data_generator: BaseDataGenerator | dict,
) -> BaseDataGenerator

Set up a data generator.

The data generator is instantiated from its configuration by using the BaseDataGenerator factory function.

Parameters:

Name Type Description Default
data_generator BaseDataGenerator | dict

Specifies the data generator or its configuration.

required

Returns:

Type Description
BaseDataGenerator

The instantiated data generator.

Example usage:

>>> from iden.data.generator import is_data_generator_config
>>> generator = setup_data_generator({"_target_": "iden.data.generator.DataGenerator", "data": [1, 2, 3]})
>>> generator
DataGenerator(copy=False)