From 44237c648ba349883db36957de44d28e318b42b7 Mon Sep 17 00:00:00 2001 From: Emmanuel Viennet Date: Mon, 13 Dec 2021 19:04:35 +0100 Subject: [PATCH] =?UTF-8?q?Fix:=20bug=20check=20conformit=C3=A9=20si=20pas?= =?UTF-8?q?=20de=20poids?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/comp/moy_mod.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/app/comp/moy_mod.py b/app/comp/moy_mod.py index 3496a1f20..24f941be6 100644 --- a/app/comp/moy_mod.py +++ b/app/comp/moy_mod.py @@ -73,6 +73,11 @@ def check_moduleimpl_conformity( Un module est dit *conforme* si et seulement si la somme des poids de ses évaluations vers une UE de coefficient non nul est non nulle. """ + nb_evals, nb_ues = evals_poids.shape + if nb_evals == 0: + return True # modules vides conformes + if nb_ues == 0: + return False # situation absurde (pas d'UE) module_evals_poids = evals_poids.transpose().sum(axis=1).to_numpy() != 0 check = all( (modules_coefficients[moduleimpl.module.id].to_numpy() != 0) @@ -177,6 +182,8 @@ def compute_module_moy( nb_etuds, nb_evals = evals_notes_df.shape nb_ues = evals_poids_df.shape[1] assert evals_poids_df.shape[0] == nb_evals # compat notes/poids + if nb_etuds == 0: + return pd.DataFrame(index=[], columns=evals_poids_df.columns) # Coefficients des évaluations, met à zéro ceux des évals incomplètes: evals_coefs = ( np.array(