From 59b916213e7cf5b8384f28d79fbf0055d9a343c4 Mon Sep 17 00:00:00 2001 From: Fabian Joswig Date: Fri, 5 Nov 2021 12:30:22 +0000 Subject: [PATCH] sort zips in Obs.__init__ again --- pyerrors/pyerrors.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pyerrors/pyerrors.py b/pyerrors/pyerrors.py index 81ee81f9..1ebef8c7 100644 --- a/pyerrors/pyerrors.py +++ b/pyerrors/pyerrors.py @@ -83,7 +83,7 @@ class Obs: self.idl = {} if idl is not None: - for name, idx in zip(names, idl): + for name, idx in sorted(zip(names, idl)): if isinstance(idx, range): self.idl[name] = idx elif isinstance(idx, (list, np.ndarray)): @@ -97,18 +97,18 @@ class Obs: else: raise Exception('incompatible type for idl[%s].' % (name)) else: - for name, sample in zip(names, samples): + for name, sample in sorted(zip(names, samples)): self.idl[name] = range(1, len(sample) + 1) if means is not None: - for name, sample, mean in zip(names, samples, means): + for name, sample, mean in sorted(zip(names, samples, means)): self.shape[name] = len(self.idl[name]) if len(sample) != self.shape[name]: 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 else: - for name, sample in zip(names, samples): + for name, sample in sorted(zip(names, samples)): self.shape[name] = len(self.idl[name]) if len(sample) != self.shape[name]: raise Exception('Incompatible samples and idx for %s: %d vs. %d' % (name, len(sample), self.shape[name]))