import torch from EIVData.csv_dataset import CSVData from torch.utils.data import random_split def load_data(seed=0, splitting_part=0.8, normalize=True): """ Loads the power plant dataset :param seed: Seed for splitting and shuffling the data. Defaults to 0. :param splitting_part: Which fraction of the data to use as training data. Defaults to 0.8. :normalize: Whether to normalize the data, defaults to True. :returns: power_trainset, power_testset """ power_dataset = CSVData('~/SharedData/AI/datasets/combined_cycle_power_plant/Folds5x2_pp_single_sheet.csv', class_name="PE", shuffle_seed=seed, normalize=normalize, delimiter=",") dataset_len = len(power_dataset) train_len = int(dataset_len*splitting_part) test_len = dataset_len - train_len power_trainset, power_testset = random_split(power_dataset, lengths=[train_len, test_len], generator=torch.Generator().manual_seed(seed)) return power_trainset, power_testset