TeX 52.9%
Python 45.7%
Shell 1.4%
1# -*- coding: utf-8 -*-2"""04b — Rassemble les fragments (shards) de la rétro-évaluation calculés sur plusieurs nœuds, dans l'ordre des cibles."""3import glob4from common import *5sh = sorted(glob.glob(str(OUT / "targets.shard*.parquet")))6log(f"{len(sh)} fragments")7Ts = [pd.read_parquet(p) for p in sh]8parts = {}9for name in ["est_E1", "est_E2", "sd_E2", "n_avail"]:10 parts[name] = [np.load(p.replace("targets.", f"{name}.").replace(".parquet", ".npy")) for p in sh]11T = pd.concat(Ts, ignore_index=True); order = np.argsort(T["idx"].to_numpy(), kind="stable")12T = T.iloc[order].reset_index(drop=True); save_parquet(T, "targets.parquet")13for name, arrs in parts.items():14 A = np.concatenate(arrs, axis=0)[order]; np.save(OUT / f"{name}.npy", A); log(f" {name}: {A.shape}")15log("rassemblement terminé")16