forked from ScoDoc/ScoDoc
Corrige prise en compte des inscriptions aux UEs pour les moyennes par tag
This commit is contained in:
parent
e675064cae
commit
ce0d5ec9fd
@ -155,7 +155,9 @@ class ResSemBUTTag(ResultatsSemestreBUT, pe_tabletags.TableTag):
|
|||||||
# 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 = 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(info_tag=info_tag, pole=None)
|
moy_ues_tag = self.compute_moy_ues_tag(
|
||||||
|
self.ues_inscr_parcours_df, info_tag=info_tag, pole=None
|
||||||
|
)
|
||||||
# Mémorise les moyennes
|
# Mémorise les moyennes
|
||||||
self.moyennes_tags[tag] = pe_moytag.MoyennesTag(
|
self.moyennes_tags[tag] = pe_moytag.MoyennesTag(
|
||||||
tag,
|
tag,
|
||||||
@ -176,7 +178,7 @@ class ResSemBUTTag(ResultatsSemestreBUT, pe_tabletags.TableTag):
|
|||||||
# Ajoute la moyenne générale par ressources
|
# Ajoute la moyenne générale par ressources
|
||||||
if "moyennes_ue_res_sae" in options and options["moyennes_ue_res_sae"]:
|
if "moyennes_ue_res_sae" in options and options["moyennes_ue_res_sae"]:
|
||||||
moy_res_gen = self.compute_moy_ues_tag(
|
moy_res_gen = self.compute_moy_ues_tag(
|
||||||
info_tag=None, pole=ModuleType.RESSOURCE
|
self.ues_inscr_parcours_df, info_tag=None, pole=ModuleType.RESSOURCE
|
||||||
)
|
)
|
||||||
self.moyennes_tags["ressources"] = pe_moytag.MoyennesTag(
|
self.moyennes_tags["ressources"] = pe_moytag.MoyennesTag(
|
||||||
"ressources",
|
"ressources",
|
||||||
@ -187,7 +189,9 @@ class ResSemBUTTag(ResultatsSemestreBUT, pe_tabletags.TableTag):
|
|||||||
|
|
||||||
# Ajoute la moyenne générale par saes
|
# Ajoute la moyenne générale par saes
|
||||||
if "moyennes_ue_res_sae" in options and options["moyennes_ue_res_sae"]:
|
if "moyennes_ue_res_sae" in options and options["moyennes_ue_res_sae"]:
|
||||||
moy_saes_gen = self.compute_moy_ues_tag(info_tag=None, pole=ModuleType.SAE)
|
moy_saes_gen = self.compute_moy_ues_tag(
|
||||||
|
self.ues_inscr_parcours_df, info_tag=None, pole=ModuleType.SAE
|
||||||
|
)
|
||||||
self.moyennes_tags["saes"] = pe_moytag.MoyennesTag(
|
self.moyennes_tags["saes"] = pe_moytag.MoyennesTag(
|
||||||
"saes",
|
"saes",
|
||||||
pe_moytag.CODE_MOY_UE,
|
pe_moytag.CODE_MOY_UE,
|
||||||
@ -264,16 +268,21 @@ class ResSemBUTTag(ResultatsSemestreBUT, pe_tabletags.TableTag):
|
|||||||
return capitalisations
|
return capitalisations
|
||||||
|
|
||||||
def compute_moy_ues_tag(
|
def compute_moy_ues_tag(
|
||||||
self, info_tag: dict[int, dict] = None, pole=None
|
self,
|
||||||
|
ues_inscr_parcours_df: pd.DataFrame,
|
||||||
|
info_tag: dict[int, dict] = None,
|
||||||
|
pole=None,
|
||||||
) -> pd.DataFrame:
|
) -> pd.DataFrame:
|
||||||
"""Calcule la moyenne par UE des étudiants pour un tag donné,
|
"""Calcule la moyenne par UE des étudiants pour un tag donné,
|
||||||
en ayant connaissance des informations sur le tag.
|
en ayant connaissance des informations sur le tag et des inscriptions des étudiants aux différentes UEs.
|
||||||
|
|
||||||
info_tag détermine les modules pris en compte :
|
info_tag détermine les modules pris en compte :
|
||||||
* si non `None`, seuls les modules rattachés au tag sont pris en compte
|
* si non `None`, seuls les modules rattachés au tag sont pris en compte
|
||||||
* si `None`, tous les modules (quelque soit leur rattachement au tag) sont pris
|
* si `None`, tous les modules (quelque soit leur rattachement au tag) sont pris
|
||||||
en compte (sert au calcul de la moyenne générale par ressource ou SAE)
|
en compte (sert au calcul de la moyenne générale par ressource ou SAE)
|
||||||
|
|
||||||
|
ues_inscr_parcours_df détermine les UEs pour lesquels le calcul d'une moyenne à un sens.
|
||||||
|
|
||||||
`pole` détermine les modules pris en compte :
|
`pole` détermine les modules pris en compte :
|
||||||
|
|
||||||
* si `pole` vaut `ModuleType.RESSOURCE`, seules les ressources sont prises
|
* si `pole` vaut `ModuleType.RESSOURCE`, seules les ressources sont prises
|
||||||
@ -282,10 +291,11 @@ class ResSemBUTTag(ResultatsSemestreBUT, pe_tabletags.TableTag):
|
|||||||
* si `pole` vaut `None` (ou toute autre valeur),
|
* si `pole` vaut `None` (ou toute autre valeur),
|
||||||
tous les modules sont pris en compte (moyenne d'UEs)
|
tous les modules sont pris en compte (moyenne d'UEs)
|
||||||
|
|
||||||
|
|
||||||
Les informations sur le tag sont un dictionnaire listant les modimpl_id rattachés au tag,
|
Les informations sur le tag sont un dictionnaire listant les modimpl_id rattachés au tag,
|
||||||
et pour chacun leur éventuel coefficient de **repondération**.
|
et pour chacun leur éventuel coefficient de **repondération**.
|
||||||
|
|
||||||
|
Args:
|
||||||
|
ues_inscr_parcours_df: L'inscription aux UEs
|
||||||
Returns:
|
Returns:
|
||||||
Le dataframe des moyennes du tag par UE
|
Le dataframe des moyennes du tag par UE
|
||||||
"""
|
"""
|
||||||
@ -332,6 +342,9 @@ class ResSemBUTTag(ResultatsSemestreBUT, pe_tabletags.TableTag):
|
|||||||
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]
|
||||||
|
|
||||||
|
# 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]
|
||||||
|
|
||||||
# Transforme les UEs en acronyme
|
# Transforme les UEs en acronyme
|
||||||
acronymes = [self.ues_to_acronymes[ue.id] for ue in self.ues_standards]
|
acronymes = [self.ues_to_acronymes[ue.id] for ue in self.ues_standards]
|
||||||
moyennes_ues_tag.columns = acronymes
|
moyennes_ues_tag.columns = acronymes
|
||||||
|
Loading…
Reference in New Issue
Block a user