From 2702b5519d0e3dc2124867a4771f3ffc9b6106bb Mon Sep 17 00:00:00 2001 From: Fabian Joswig Date: Wed, 8 Dec 2021 16:11:44 +0000 Subject: [PATCH] refactor: loop and if clause eliminated in Obs.__init__ --- pyerrors/obs.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pyerrors/obs.py b/pyerrors/obs.py index a2deda6d..4247de8e 100644 --- a/pyerrors/obs.py +++ b/pyerrors/obs.py @@ -119,6 +119,7 @@ class Obs: for name, sample in sorted(zip(names, samples)): self.idl[name] = range(1, len(sample) + 1) + self._value = 0 if means is not None: for name, sample, mean in sorted(zip(names, samples, means)): self.shape[name] = len(self.idl[name]) @@ -126,6 +127,7 @@ class Obs: raise Exception('Incompatible samples and idx for %s: %d vs. %d' % (name, len(sample), self.shape[name])) self.r_values[name] = mean self.deltas[name] = sample + self.N = sum(list(self.shape.values())) else: for name, sample in sorted(zip(names, samples)): self.shape[name] = len(self.idl[name]) @@ -133,14 +135,12 @@ class Obs: raise Exception('Incompatible samples and idx for %s: %d vs. %d' % (name, len(sample), self.shape[name])) self.r_values[name] = np.mean(sample) self.deltas[name] = sample - self.r_values[name] - self.is_merged = {} - self.N = sum(list(self.shape.values())) - - self._value = 0 - if means is None: - for name in self.names: self._value += self.shape[name] * self.r_values[name] + self.N = sum(list(self.shape.values())) self._value /= self.N + + self.is_merged = {} + else: self._value = 0 self.is_merged = {}