def __init__(self, data, normalize=False, mean=None, std=None, shuffle=False, train_size=0.8, train=True, random_seed=42): self.random = np.random.RandomState(random_seed) shuffle_idx = np.arange(data.shape[0]) if shuffle: self.random.shuffle(shuffle_idx) if isinstance(train_size, float): train_samples = int(data.shape[0] * train_size) else: raise TypeError("The param train_size must be float < 1") if train: data = data[shuffle_idx[:train_samples]] else: data = data[shuffle_idx[train_samples:]] # as tensor self.data_set = MsTensor(data).astype(dtype=mstype.float32) # Normalize data self.mean, self.std = mean, std if normalize: if mean is None or std is None: self.mean = msnp.mean(self.data_set, 0, keepdims=True) self.std = msnp.std(self.data_set, 0, keepdims=True) self.data_set = (self.data_set - self.mean) / self.std self.n_samples = self.data_set.shape[0]
def test_exception_mean(): with pytest.raises(ValueError): mnp.mean(mnp.asarray(test_case.arrs[0]), (-1, 0))