Block Generator
- class tsbootstrap.block_generator.BlockGenerator(block_length_sampler: BlockLengthSampler, input_length: Integral, wrap_around_flag: bool = False, rng: Generator | None = None, overlap_length: Integral | None = None, min_block_length: Integral | None = None)[source]
A class that generates blocks of indices.
- __init__()[source]
Initialize the BlockGenerator with the given parameters.
- generate_non_overlapping_blocks()[source]
Generate non-overlapping block indices.
- generate_overlapping_blocks()[source]
Generate overlapping block indices.
- generate_blocks(overlap_flag=False)[source]
Generate block indices.
- property block_length_sampler: BlockLengthSampler
The block length sampler.
- generate_blocks(overlap_flag: bool = False)[source]
Generate block indices.
This method is a general entry point to generate either overlapping or non-overlapping blocks based on the given flag.
- Parameters:
overlap_flag (bool, optional) – A flag indicating whether to generate overlapping blocks, by default False.
- Returns:
A list of numpy arrays where each array represents the indices of a block in the time series.
- Return type:
List[np.ndarray]
- generate_non_overlapping_blocks()[source]
Generate non-overlapping block indices in the time series.
- Returns:
List of numpy arrays containing the indices for each non-overlapping block.
- Return type:
List[np.ndarray]
Example
>>> block_generator = BlockGenerator(input_length=100, block_length_sampler=UniformBlockLengthSampler()) >>> non_overlapping_blocks = block_generator.generate_non_overlapping_blocks() >>> len(non_overlapping_blocks) 10
- generate_overlapping_blocks()[source]
Generate overlapping block indices in the time series.
- Returns:
List of numpy arrays containing the indices for each overlapping block.
- Return type:
List[np.ndarray]
Example
>>> block_generator = BlockGenerator(input_length=100, block_length_sampler=UniformBlockLengthSampler(), overlap_length=5) >>> overlapping_blocks = block_generator.generate_overlapping_blocks() >>> len(overlapping_blocks) 15
- property input_length: Integral
The length of the input time series.
- property min_block_length: Integral
The minimum length of a block.
- property overlap_length: Integral
The length of overlap between consecutive blocks.
- property rng: Generator
The random number generator.
- property wrap_around_flag: bool
A flag indicating whether to allow wrap-around in the block sampling.