Cas des moyennes par tag sans notes
This commit is contained in:
parent
99bb0f471b
commit
16a12dad59
@ -98,9 +98,7 @@ class ResSemBUTTag(ResultatsSemestreBUT, pe_tabletags.TableTag):
|
|||||||
self.parcours += [None]
|
self.parcours += [None]
|
||||||
|
|
||||||
# Les UEs en fonction des parcours
|
# Les UEs en fonction des parcours
|
||||||
self.ues_inscr_parcours_df = (
|
self.ues_inscr_parcours_df = self.load_ues_inscr_parcours()
|
||||||
self.load_ues_inscr_parcours()
|
|
||||||
) # peut contenir du sport
|
|
||||||
"""Inscription des étudiants aux UEs des parcours (etudids x ue_ids)"""
|
"""Inscription des étudiants aux UEs des parcours (etudids x ue_ids)"""
|
||||||
|
|
||||||
# Les acronymes des UEs
|
# Les acronymes des UEs
|
||||||
@ -126,14 +124,16 @@ class ResSemBUTTag(ResultatsSemestreBUT, pe_tabletags.TableTag):
|
|||||||
|
|
||||||
# Les tags personnalisés et auto:
|
# Les tags personnalisés et auto:
|
||||||
if "moyennes_tags" in options:
|
if "moyennes_tags" in options:
|
||||||
tags_dict = self._get_tags_dict(avec_moyennes_tags=options["moyennes_tags"])
|
self.tags_dict = self._get_tags_dict(
|
||||||
|
avec_moyennes_tags=options["moyennes_tags"]
|
||||||
|
)
|
||||||
else:
|
else:
|
||||||
tags_dict = self._get_tags_dict()
|
self.tags_dict = self._get_tags_dict()
|
||||||
|
|
||||||
pe_affichage.pe_print(
|
pe_affichage.pe_print(
|
||||||
f"""--> {pe_affichage.aff_tags_par_categories(tags_dict)}"""
|
f"""--> {pe_affichage.aff_tags_par_categories(self.tags_dict)}"""
|
||||||
)
|
)
|
||||||
self._check_tags(tags_dict)
|
self._check_tags(self.tags_dict)
|
||||||
|
|
||||||
# Les coefficients pour le calcul de la moyenne générale, donnés par
|
# Les coefficients pour le calcul de la moyenne générale, donnés par
|
||||||
# acronymes d'UE
|
# acronymes d'UE
|
||||||
@ -159,9 +159,9 @@ class ResSemBUTTag(ResultatsSemestreBUT, pe_tabletags.TableTag):
|
|||||||
# Calcul des moyennes & les classements de chaque étudiant à chaque tag
|
# Calcul des moyennes & les classements de chaque étudiant à chaque tag
|
||||||
self.moyennes_tags = {}
|
self.moyennes_tags = {}
|
||||||
"""Moyennes par tags (personnalisés ou 'but')"""
|
"""Moyennes par tags (personnalisés ou 'but')"""
|
||||||
for tag in tags_dict["personnalises"]:
|
for tag in self.tags_dict["personnalises"]:
|
||||||
# pe_affichage.pe_print(f" -> Traitement du tag {tag}")
|
# pe_affichage.pe_print(f" -> Traitement du tag {tag}")
|
||||||
info_tag = tags_dict["personnalises"][tag]
|
info_tag = self.tags_dict["personnalises"][tag]
|
||||||
# Les moyennes générales par UEs
|
# Les moyennes générales par UEs
|
||||||
moy_ues_tag = self.compute_moy_ues_tag(
|
moy_ues_tag = self.compute_moy_ues_tag(
|
||||||
self.ues_inscr_parcours_df, info_tag=info_tag, pole=None
|
self.ues_inscr_parcours_df, info_tag=info_tag, pole=None
|
||||||
@ -361,22 +361,24 @@ class ResSemBUTTag(ResultatsSemestreBUT, pe_tabletags.TableTag):
|
|||||||
|
|
||||||
# Calcule les moyennes pour le tag visé dans chaque UE (dataframe etudid x ues)
|
# Calcule les moyennes pour le tag visé dans chaque UE (dataframe etudid x ues)
|
||||||
moyennes_ues_tag = comp.moy_ue.compute_ue_moys_apc(
|
moyennes_ues_tag = comp.moy_ue.compute_ue_moys_apc(
|
||||||
self.sem_cube,
|
self.sem_cube, # matrice etudids x modimpls x UEs
|
||||||
self.etuds,
|
self.etuds,
|
||||||
self.formsemestre.modimpls_sorted,
|
self.formsemestre.modimpls_sorted,
|
||||||
self.modimpl_inscr_df,
|
self.modimpl_inscr_df,
|
||||||
modimpl_coefs_ponderes_df,
|
modimpl_coefs_ponderes_df,
|
||||||
modimpls_mask,
|
modimpls_mask,
|
||||||
self.dispense_ues,
|
self.dispense_ues,
|
||||||
block=self.formsemestre.block_moyennes,
|
block=False, # self.formsemestre.block_moyennes, calcul même si sem bloqué
|
||||||
)
|
)
|
||||||
|
|
||||||
# Ne conserve que les UEs standards
|
# Ne conserve que les UEs standards
|
||||||
colonnes = [ue.id for ue in self.ues_standards]
|
colonnes = [ue.id for ue in self.ues_standards]
|
||||||
moyennes_ues_tag = moyennes_ues_tag[colonnes]
|
moyennes_ues_tag = moyennes_ues_tag[colonnes]
|
||||||
|
|
||||||
# Met à zéro les moyennes non calculées/calculables
|
# Met à zéro les moyennes non calculées/calculables pour les UEs ayant des notes
|
||||||
moyennes_ues_tag.fillna(0.0, inplace=True)
|
for col in colonnes:
|
||||||
|
if moyennes_ues_tag[col].isna().sum() != len(moyennes_ues_tag[col]):
|
||||||
|
moyennes_ues_tag[col].fillna(0.0, inplace=True)
|
||||||
|
|
||||||
# Applique le masque d'inscription aux UE pour ne conserver que les UE dans lequel l'étudiant est inscrit
|
# Applique le masque d'inscription aux UE pour ne conserver que les UE dans lequel l'étudiant est inscrit
|
||||||
moyennes_ues_tag = moyennes_ues_tag[colonnes] * ues_inscr_parcours_df[colonnes]
|
moyennes_ues_tag = moyennes_ues_tag[colonnes] * ues_inscr_parcours_df[colonnes]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user