def _get_datasets( self, ) -> ( Union[None, DatasetFileDataset], Union[None, DatasetFileDataset], Union[None, DatasetFileDataset], ): """ Gets the datasets and dataset files associated with this forecast :return: (ts, rts, md) """ datasets = self.config.datasets(self.dataset_file) prefix = f"s3://{self.dataset_file.bucket}/train/{self.dataset_file.prefix}" ts, rts, md = None, None, None for dataset in datasets: if dataset.dataset_type == DatasetType.TARGET_TIME_SERIES: ts = DatasetFileDataset( dataset, DatasetFile.from_s3_path(prefix + dataset.dataset_type.suffix), ) elif dataset.dataset_type == DatasetType.RELATED_TIME_SERIES: rts = DatasetFileDataset( dataset, DatasetFile.from_s3_path(prefix + dataset.dataset_type.suffix), ) elif dataset.dataset_type == DatasetType.ITEM_METADATA: md = DatasetFileDataset( dataset, DatasetFile.from_s3_path(prefix + dataset.dataset_type.suffix), ) return (ts, rts, md)
def test_dataset_file_from_s3_path(path, bucket, key): dsf = DatasetFile.from_s3_path(s3_path=path) assert dsf.bucket == bucket assert dsf.key == key
def test_dataset_file_from_s3_path(path): dsf = DatasetFile.from_s3_path(s3_path=path) assert dsf.s3_url == path.split("?")[0]
def test_dataset_file_from_s3_path(path): dsf = DatasetFile.from_s3_path(s3_path=path) assert dsf.s3_prefix == "s3://some_bucket/"