def __init__(self, project, values, start=None, end=None, **kwargs): v = [val for val in values] self.values = np.array(v) if start is None: start = 0 if end is None: end = len(project.waves[0]) self.leakages = np.array([wave[start:end] for wave in project.waves]) Container.__init__(self, **kwargs)
def __init__(self, leakages_filename, values_filename, **kwargs): """ Basic constructor :param leakages_filename: name of the npy file corresponding to the leakages :param values_filename: name of the npy file corresponding to the values :param kwargs: additional Container keyword arguments """ self.leakages = np.lib.format.open_memmap(leakages_filename,'r+') self.values = np.lib.format.open_memmap(values_filename,'r+') Container.__init__(self, **kwargs) self.logger.debug('Creating NpyContainer from files %s / %s.'%(leakages_filename, values_filename) )
def get_leakage_mean_var(self): """ Compute mean/var of the leakage. :return: mean/var of the container leakages """ try: mean, var = self.leakages.mean(0), self.leakages.var(0) return self.apply_both_value(mean), self.apply_both_value(var) except: return Container.get_leakage_mean_var()
def __init__(self, filename, leakages_dataset_name="leakages", values_dataset_name="values", mode="r", **kwargs): """ Basic constructor :param filename: :param leakages_dataset_name: :param values_dataset_name: :param mode: mode for opening filename: default is read-only """ self._file = h5py.File(filename, mode) self.leakages = self._file[leakages_dataset_name] self.values = self._file[values_dataset_name] Container.__init__(self, **kwargs) self.logger.debug( 'Creating Hdf5Container from file %s with datasests %s/%s.' % (filename, leakages_dataset_name, values_dataset_name))
def get_leakage_mean_var(self): """ Compute mean/var of the leakage. :return: mean/var of the container leakages """ try: mean, var = self.leakages.attrs["mean"], self.leakages.attrs["var"] return self.apply_both_leakage(mean), self.apply_both_leakage(var) except: mean, var = Container.get_leakage_mean_var(self) try: self.leakages.attrs["mean"] = mean self.leakages.attrs["var"] = var except: pass return mean, var