make_example_multi_index_dataframe¶
- make_example_multi_index_dataframe(n_cases: int = 10, n_channels: int = 1, min_n_timepoints: int = 8, max_n_timepoints: int = 12, n_labels: int = 2, regression_target: bool = False, random_state=None, return_y: bool = True)[source]¶
Randomly generate multi-index pd.DataFrame X and numpy y data for testing.
Generates data in ‘pd-multiindex’ format.
Will ensure there is at least one sample per label if a classification label is being returned (regression_target=False).
- Parameters:
- n_casesint, default = 10
The number of samples to generate.
- n_channelsint, default = 1
The number of series channels to generate.
- min_n_timepointsint, default = 12
The minimum number of features/series length to generate for individual series.
- max_n_timepointsint, default = 12
The maximum number of features/series length to generate for individual series.
- n_labelsint, default = 2
The number of unique labels to generate.
- regression_targetbool, default = False
If True, the target will be a float, otherwise a discrete.
- random_stateint or None, default = None
Seed for random number generation.
- return_ybool, default = True
Return the y target variable.
- Returns:
- Xpd.DataFrame
Randomly generated potentially unequal length 3D data.
- ynp.ndarray
Randomly generated labels if return_y is True.
Examples
>>> from aeon.testing.data_generation import make_example_multi_index_dataframe >>> from aeon.utils.validation.collection import get_type >>> data, labels = make_example_multi_index_dataframe( ... n_cases=2, ... n_channels=2, ... min_n_timepoints=4, ... max_n_timepoints=6, ... n_labels=2, ... random_state=0, ... ) >>> print(data) channel_0 channel_1 case timepoint 0 0 0.000000 1.247127 1 1.688531 0.768763 2 1.715891 0.595069 3 1.694503 0.113426 1 0 2.000000 3.702387 1 3.166900 0.284144 2 2.115580 0.348517 3 2.272178 0.080874 >>> print(labels) [0 1] >>> get_type(data) 'pd-multiindex'